<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Projects and Tools &#8211; Muhammet Işık</title>
	<atom:link href="https://muisik.com/en/category/portfolio/projects-and-tools/feed/" rel="self" type="application/rss+xml" />
	<link>https://muisik.com</link>
	<description>Industrial Software and Solutions</description>
	<lastBuildDate>Tue, 28 Jul 2026 07:40:36 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0.3</generator>

<image>
	<url>https://muisik.com/wp-content/uploads/2026/01/cropped-favicon-32x32.png</url>
	<title>Projects and Tools &#8211; Muhammet Işık</title>
	<link>https://muisik.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Digital Traceability at Industry Standards: Manufacturing Execution System Model</title>
		<link>https://muisik.com/en/digital-traceability-at-aerospace-standards-manufacturing-execution-system-mes-model/</link>
		
		<dc:creator><![CDATA[Muhammet Işık]]></dc:creator>
		<pubDate>Thu, 19 Mar 2026 21:49:57 +0000</pubDate>
				<category><![CDATA[Projects and Tools]]></category>
		<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[API Design]]></category>
		<category><![CDATA[Digital Transformation]]></category>
		<category><![CDATA[Enterprise Software]]></category>
		<category><![CDATA[Manufacturing]]></category>
		<category><![CDATA[Manufacturing Execution Systems]]></category>
		<category><![CDATA[System Integration]]></category>
		<guid isPermaLink="false">https://muisik.com/?p=2434</guid>

					<description><![CDATA[Designed strictly according to the zero-tolerance standards of the Aerospace and Defense industry, this Manufacturing Execution System (MES) secures end-to-end hardware traceability across complex assembly lines. The system fully digitizes the physical lifecycle, spanning from raw inventory management to sub-assembly cycles and conclusive platform integrations. The framework natively mandates unique hardware identification (UUID serialization), robust separation of duties via strict RBAC matrices, and deterministic inventory allocation mapped via FIFO algorithms. Operating cleanly past the prototype phase, the system is actively ready for immediate field pilot deployment and seamless integration loops with corporate ERP macro-services (SAP/Oracle).]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph"><em>Scope: software proof of concept, tested in a simulated manufacturing scenario.</em></p>



<p class="wp-block-paragraph">This proof-of-concept MES application models traceability across a manufacturing and assembly workflow. It assigns a UUID to each component, uses role-based access control to separate responsibilities, applies FIFO-based inventory allocation, and records component-to-assembly relationships for later audit.</p>



<p class="wp-block-paragraph">The application was developed around a representative UAV manufacturing scenario and tested as a software PoC. It has not been deployed in a production environment.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f4a1.png" alt="💡" class="wp-smiley" style="height: 1em; max-height: 1em;" />&nbsp;<strong>Sectoral Scalability:</strong>&nbsp;Structured directly using rigorous Aerospace compliance benchmarks, this architecture possesses the inherent flexibility to be directly scaled horizontally into automotive, heavy industry, and generalized industrial machinery production bands without necessitating fundamental architectural alterations.</p>
</blockquote>





<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading" id="project-portfolio">Project Portfolio</h2>


<div class="kb-table-container kb-table-container2434_629493-c5 wp-block-kadence-table"><table class="kb-table kb-table2434_629493-c5">
<tr class="kb-table-row kb-table-row2434_3e3dcb-e9">
<th  scope="col" class="kb-table-data kb-table-data2434_5752cd-e7">

<p class="wp-block-paragraph">Parameter</p>

</th>

<th  scope="col" class="kb-table-data kb-table-data2434_6f2d99-f1">

<p class="wp-block-paragraph">Value</p>

</th>
</tr>

<tr class="kb-table-row kb-table-row2434_63d15f-d8">
<td  class="kb-table-data kb-table-data2434_d93b41-80">

<p class="wp-block-paragraph"><strong>Category</strong></p>

</td>

<td  class="kb-table-data kb-table-data2434_4b25d2-d0">

<p class="wp-block-paragraph">System Integration</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2434_86dbfe-11">
<td  class="kb-table-data kb-table-data2434_55b2a7-59">

<p class="wp-block-paragraph"><strong>Delivery Type</strong></p>

</td>

<td  class="kb-table-data kb-table-data2434_9cf20e-a9">

<p class="wp-block-paragraph">Software System Architecture / PoC</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2434_f21e35-de">
<td  class="kb-table-data kb-table-data2434_f05dfd-9a">

<p class="wp-block-paragraph"><strong>Status</strong></p>

</td>

<td  class="kb-table-data kb-table-data2434_9a5b26-76">

<p class="wp-block-paragraph">Proof of Concept</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2434_f6f8be-a6">
<td  class="kb-table-data kb-table-data2434_6a0a8e-f5">

<p class="wp-block-paragraph"><strong>Scale / Scope</strong></p>

</td>

<td  class="kb-table-data kb-table-data2434_6470f2-8b">

<p class="wp-block-paragraph">End-to-End Assembly Traceability, API Development</p>

</td>
</tr>
</table></div>


<h2 class="wp-block-heading" id="current-situation-and-problem">Current Situation and Problem</h2>



<p class="wp-block-paragraph"><strong>Context:</strong> The scenario below uses publicly known UAV platform names as representative examples. It does not reflect any real manufacturer’s process, data or configuration. The integration environments of autonomous platform products (TB2, AKINCI, etc.) within the defense sector mandate exceptionally strict traceability compliance regulations. Every individual physical hardware unit populating the factory grid constitutes an obligatory audit record—demanding absolute clarity regarding which approved procurement batch it originated from, which specific operator configured it at which station, and ultimately, which primary airframe it was deployed into. </p>



<p class="wp-block-paragraph"><strong>Critical Issues:</strong> Extruded in the absence of a synchronized, digitally role-bound administrative control mechanism, the statistical probability of component mismatching or structural clashes across disparate platforms escalates. Relying solely on manual worksheets and disconnected ERP peripheral data matrices (often completely deviating from true FIFO constraints) liquidates any capability to execute conclusive backward root-cause analyses during critical audits.</p>


<div class="kb-table-container kb-table-container2434_d4344c-f8 wp-block-kadence-table"><table class="kb-table kb-table2434_d4344c-f8">
<tr class="kb-table-row kb-table-row2434_5de035-2a">
<th  scope="col" class="kb-table-data kb-table-data2434_5e9c5e-e5">

<p class="wp-block-paragraph">Problem</p>

</th>

<th  scope="col" class="kb-table-data kb-table-data2434_1d2fc0-f4">

<p class="wp-block-paragraph">Detail / Impact</p>

</th>
</tr>

<tr class="kb-table-row kb-table-row2434_e97e2a-71">
<td  class="kb-table-data kb-table-data2434_634189-cd">

<p class="wp-block-paragraph"><strong>Component Mismatching</strong></p>

</td>

<td  class="kb-table-data kb-table-data2434_549020-e1">

<p class="wp-block-paragraph">The critical operational hazard of erroneously allocating a TB2 structural wing configuration into an AKINCI primary chassis construct.</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2434_33d9bd-5f">
<td  class="kb-table-data kb-table-data2434_a3e2d6-92">

<p class="wp-block-paragraph"><strong>Authorization Variance</strong></p>

</td>

<td  class="kb-table-data kb-table-data2434_ccd44f-23">

<p class="wp-block-paragraph">The risk of avionics personnel possessing undocumented authorization to initiate structural mechanics lots within the manufacturing system.</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2434_944ea7-5e">
<td  class="kb-table-data kb-table-data2434_8d4ae2-6d">

<p class="wp-block-paragraph"><strong>Blind Inventory Status</strong></p>

</td>

<td  class="kb-table-data kb-table-data2434_594793-20">

<p class="wp-block-paragraph">Deep informational disconnect spanning the physical state of the shop floor opposed directly against the theoretically available rack hardware.</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2434_46eaec-bb">
<td  class="kb-table-data kb-table-data2434_5eed5e-14">

<p class="wp-block-paragraph"><strong>Audit Unavailability</strong></p>

</td>

<td  class="kb-table-data kb-table-data2434_86ebb0-81">

<p class="wp-block-paragraph">The inability to conclusively track a defective component back to its specific production timestamp or designated operator during a revision audit.</p>

</td>
</tr>
</table></div>


<h2 class="wp-block-heading" id="solution-architecture-and-execution">Solution Architecture and Execution</h2>



<p class="wp-block-paragraph"><strong>Architectural Approach:</strong>&nbsp;A full 3-tier API architecture was mapped out, relying on role-based security boundaries and deterministic inventory allocations to effectively neutralize data-management risks.</p>



<figure class="wp-block-kadence-image kb-image2434_72c376-07 size-full"><img fetchpriority="high" decoding="async" width="562" height="592" src="https://muisik.com/wp-content/uploads/2026/03/aerospace-mes-diagram.png" alt="" class="kb-img wp-image-2435" srcset="https://muisik.com/wp-content/uploads/2026/03/aerospace-mes-diagram.png 562w, https://muisik.com/wp-content/uploads/2026/03/aerospace-mes-diagram-285x300.png 285w" sizes="(max-width: 562px) 100vw, 562px" /></figure>



<h3 class="wp-block-heading" id="applied-methodology">Applied Methodology</h3>



<h4 class="wp-block-heading" id="hardware-uuid-serialization-process">Hardware (UUID) Serialization Process</h4>



<p class="wp-block-paragraph">Every fully manufactured physical component is ingested into the database environment formatted exclusively as a UUID. This explicit parameter logs production execution times, specific batch typologies, and precise assembly line trajectory assignments ensuring minimal procedural margin of error:</p>



<pre class="wp-block-code"><code>class Part(models.Model):
    id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
    part_type = models.ForeignKey(PartType, on_delete=models.PROTECT)
    produced_by = models.ForeignKey(Employee, on_delete=models.PROTECT)
    production_date = models.DateTimeField(auto_now_add=True)
    aircraft = models.ForeignKey(Aircraft, null=True, blank=True, on_delete=models.SET_NULL)
</code></pre>



<h4 class="wp-block-heading" id="role-based-access-control-rbac-node">Role-Based Access Control (RBAC) Node</h4>



<p class="wp-block-paragraph">Three separated access roles were defined within the &#8220;Production&#8221; sector to physically enforce reliable duty segregation paradigms:</p>


<div class="kb-table-container kb-table-container2434_1dbbac-da wp-block-kadence-table"><table class="kb-table kb-table2434_1dbbac-da">
<tr class="kb-table-row kb-table-row2434_b63e08-36">
<th  scope="col" class="kb-table-data kb-table-data2434_573dae-fb">

<p class="wp-block-paragraph">Role</p>

</th>

<th  scope="col" class="kb-table-data kb-table-data2434_0813b1-0a">

<p class="wp-block-paragraph">Permissions</p>

</th>

<th  scope="col" class="kb-table-data kb-table-data2434_b785d4-5f">

<p class="wp-block-paragraph">Constraints</p>

</th>
</tr>

<tr class="kb-table-row kb-table-row2434_bea60c-a1">
<td  class="kb-table-data kb-table-data2434_77872a-3c">

<p class="wp-block-paragraph"><strong>Fabricator</strong></p>

</td>

<td  class="kb-table-data kb-table-data2434_754af0-89">

<p class="wp-block-paragraph">Explicit authority restricted to manufacturing/viewing locally assigned team components.</p>

</td>

<td  class="kb-table-data kb-table-data2434_601fae-0d">

<p class="wp-block-paragraph">Zero operational access bridging into separate team inventory structures.</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2434_179c48-da">
<td  class="kb-table-data kb-table-data2434_853697-6d">

<p class="wp-block-paragraph"><strong>Assembler</strong></p>

</td>

<td  class="kb-table-data kb-table-data2434_7bc39e-ca">

<p class="wp-block-paragraph">Secured access explicitly mapped to execution of continuous assembly (platform-level) directories.</p>

</td>

<td  class="kb-table-data kb-table-data2434_c7bd04-40">

<p class="wp-block-paragraph">Prevented outright from contributing raw sub-components or hardware elements to the core system.</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2434_a0189a-35">
<td  class="kb-table-data kb-table-data2434_29bc9e-f6">

<p class="wp-block-paragraph"><strong>Admin</strong></p>

</td>

<td  class="kb-table-data kb-table-data2434_d4b3b5-12">

<p class="wp-block-paragraph">Unrestricted extraction of KPI/P&amp;L status metric reports and dynamic user management control vectors.</p>

</td>

<td  class="kb-table-data kb-table-data2434_8f93ce-b1">

<p class="wp-block-paragraph">—</p>

</td>
</tr>
</table></div>


<h4 class="wp-block-heading" id="automated-compatibility-isolation">Automated Compatibility Isolation</h4>



<p class="wp-block-paragraph">Configuring a fail-safe framework, the network blocks aircraft assembly progressions if human data-input matrices or invalid API requests command conflicting hardware platforms:</p>



<pre class="wp-block-code"><code>def validate_assembly(aircraft_type, part):
    """Halts localized structural crossovers between non-compatible platforms"""
    if part.part_type.platform != aircraft_type.platform:
        raise ValidationError(
            f"{part.part_type.name} part cannot be integrated into {aircraft_type.name} hardware."
        )</code></pre>



<h4 class="wp-block-heading" id="deterministic-fifo-first-in-first-out">Deterministic FIFO (First-In-First-Out)</h4>



<p class="wp-block-paragraph">overriding serial production degradation factors, the absolute oldest raw hardware components injected sequentially into the shop floor are prioritized for assembly querying logic:</p>



<pre class="wp-block-code"><code>def allocate_part(part_type, aircraft):
    """Allocate the oldest historical component directly to open assembly cycles"""
    available_part = Part.objects.filter(
        part_type=part_type,
        aircraft__isnull=True,
        is_deleted=False
    ).order_by('production_date').first()
    
    if available_part:
        available_part.aircraft = aircraft
        available_part.save()
        return available_part
    raise StockError("Scheduled integration requirement is functionally out of stock")</code></pre>



<h4 class="wp-block-heading" id="soft-delete-protocols-for-audit-logging">Soft-Delete Protocols for Audit Logging</h4>



<p class="wp-block-paragraph">Regardless of whether operational components trigger critical revision recalls or are definitively designated as physical scrap assets, items are structurally preserved and exclusively marked (<code>is_deleted</code>) securing uncompromising standard audit compliance logs.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading" id="results-and-operational-gains">Results and Operational Gains</h2>



<p class="wp-block-paragraph"><strong>PoC Results</strong> — observed in functional testing of the application.</p>


<div class="kb-table-container kb-table-container2434_bbf37b-6e wp-block-kadence-table"><table class="kb-table kb-table2434_bbf37b-6e">
<tr class="kb-table-row kb-table-row2434_8af737-27">
<th  scope="col" class="kb-table-data kb-table-data2434_fc3342-db">

<p class="wp-block-paragraph">Value Focus Area</p>

</th>

<th  scope="col" class="kb-table-data kb-table-data2434_4bc651-5f">

<p class="wp-block-paragraph">Technical Impact</p>

</th>
</tr>

<tr class="kb-table-row kb-table-row2434_c6446d-bd">
<td  class="kb-table-data kb-table-data2434_de627d-42">

<p class="wp-block-paragraph"><strong>End-to-End Traceability</strong></p>

</td>

<td  class="kb-table-data kb-table-data2434_7a3987-92">

<p class="wp-block-paragraph">The validation layer rejected incompatible component assignments; soft deletion preserved historical records; and component-to-assembly relationships were recorded via structured component and assembly records.</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2434_aae853-81">
<td  class="kb-table-data kb-table-data2434_3d9019-5a">

<p class="wp-block-paragraph"><strong>Hardware Collision Blocked</strong></p>

</td>

<td  class="kb-table-data kb-table-data2434_c88510-c8">

<p class="wp-block-paragraph">FIFO queries selected the oldest available compatible component.</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2434_c8d692-6c">
<td  class="kb-table-data kb-table-data2434_f66512-54">

<p class="wp-block-paragraph"><strong>Real-Time Inventory Status</strong></p>

</td>

<td  class="kb-table-data kb-table-data2434_31a405-c1">

<p class="wp-block-paragraph">REST endpoints exposed current inventory and assembly state.</p>

</td>
</tr>
</table></div>


<h3 class="wp-block-heading" id="api-integration-architecture-erp-readiness">API Integration Architecture (ERP Readiness)</h3>



<p class="wp-block-paragraph">Operating OpenAPI 3.0 frameworks, OpenAPI documentation was generated as a basis for future ERP integration with enterprise systems such as SAP or Oracle. No SAP or Oracle integration has been implemented.</p>



<pre class="wp-block-code"><code>GET    /api/parts/                 # Index all available active hardware within factory bounds
POST   /api/parts/                 # Declare standard new ingress component parameters
DELETE /api/parts/{id}/            # Classify component strictly as physical scrap (soft-delete record)

GET    /api/aircraft/              # Call active status updates reflecting complete main assembly lines
POST   /api/aircraft/              # Initialize new assembly framework matrix directly onto the line
GET    /api/inventory/stock-levels # Provide real-time operational hardware stock queries (Live Count)
</code></pre>



<h2 class="wp-block-heading" id="related-links">Related Links</h2>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f4c2.png" alt="📂" class="wp-smiley" style="height: 1em; max-height: 1em;" />&nbsp;<strong>Source Code:</strong>&nbsp;<a href="https://github.com/isikmuhamm/aerospace-manufacturing-execution-system" rel="nofollow noopener" target="_blank">Github/aerospace-manufacturing-execution-system</a></p>
</blockquote>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p class="wp-block-paragraph"><em>Last Updated: January 2026 | Version 1.0</em></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Fieldbus Integration in Safety-Critical HMI Systems</title>
		<link>https://muisik.com/en/fieldbus-integration-in-safety-critical-hmi-systems/</link>
		
		<dc:creator><![CDATA[Muhammet Işık]]></dc:creator>
		<pubDate>Thu, 19 Mar 2026 18:39:40 +0000</pubDate>
				<category><![CDATA[Projects and Tools]]></category>
		<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[HMI (Human Machine Interface)]]></category>
		<category><![CDATA[Industrial Communication Protocols]]></category>
		<category><![CDATA[Railway Signalling]]></category>
		<category><![CDATA[Safety Controllers]]></category>
		<category><![CDATA[Safety Critical Systems]]></category>
		<category><![CDATA[System Integration]]></category>
		<guid isPermaLink="false">https://muisik.com/?p=2413</guid>

					<description><![CDATA[A standard C99-based middleware designed on the ANSYS SCADE Display platform, enabling HMI screens to communicate with field-level HIMA HiMatrix F35 safety PLCs via Modbus TCP/IP.]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph"><em>Scope: academic proof of concept validated on a laboratory testbed. The middleware described is not a SIL-certified or safety-certified component.</em></p>



<p class="wp-block-paragraph">A standard C99-based middleware designed on the ANSYS SCADE Display platform, enabling HMI screens to communicate with field-level&nbsp;<strong>HIMA HiMatrix F35</strong>&nbsp;safety PLCs via&nbsp;<strong>Modbus TCP/IP</strong>.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph"><strong>Scope:</strong>&nbsp;An integration application operating on the zero-copy principle, developed to establish data exchange between SCADE&#8217;s closed-loop structure and the control layer.</p>
</blockquote>





<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading" id="project-portfolio">Project Portfolio</h2>


<div class="kb-table-container kb-table-container2413_296c6c-08 wp-block-kadence-table"><table class="kb-table kb-table2413_296c6c-08">
<tr class="kb-table-row kb-table-row2413_aa8485-30">
<th  scope="col" class="kb-table-data kb-table-data2413_7d50c0-20">

<p class="wp-block-paragraph">Parameter</p>

</th>

<th  scope="col" class="kb-table-data kb-table-data2413_168897-53">

<p class="wp-block-paragraph">Value</p>

</th>
</tr>

<tr class="kb-table-row kb-table-row2413_e102c8-11">
<td  class="kb-table-data kb-table-data2413_cfb0c1-2e">

<p class="wp-block-paragraph"><strong>Category</strong></p>

</td>

<td  class="kb-table-data kb-table-data2413_ce6cec-dc">

<p class="wp-block-paragraph">System Integration</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2413_1c9db7-5f">
<td  class="kb-table-data kb-table-data2413_f50230-29">

<p class="wp-block-paragraph"><strong>Delivery Type</strong></p>

</td>

<td  class="kb-table-data kb-table-data2413_46fe53-e7">

<p class="wp-block-paragraph">Embedded Middleware</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2413_e9a5be-00">
<td  class="kb-table-data kb-table-data2413_b5160d-36">

<p class="wp-block-paragraph"><strong>Status</strong></p>

</td>

<td  class="kb-table-data kb-table-data2413_9730e4-d5">

<p class="wp-block-paragraph">Proof of Concept / Academic Paper Published</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2413_fff32e-02">
<td  class="kb-table-data kb-table-data2413_386d96-fe">

<p class="wp-block-paragraph"><strong>Scale / Scope</strong></p>

</td>

<td  class="kb-table-data kb-table-data2413_274e78-7c">

<p class="wp-block-paragraph">Local Communication (4 Track Circuits, 6 Signals, 1 Switch)</p>

</td>
</tr>
</table></div>


<h2 class="wp-block-heading" id="current-situation-and-problem">Current Situation and Problem</h2>



<p class="wp-block-paragraph"><strong>Context:</strong>&nbsp;The necessity to migrate the interlocking simulation system (4 tracks, 6 signals, 1 switch) at the ITU Railway Systems Laboratory to a SCADE Display-supported HMI architecture compliant with industrial and certifiable standards.&nbsp;<strong>Critical Issues:</strong>&nbsp;The absence of a native Modbus interface within SCADE Display and the platform&#8217;s closed-network design. The inability of the HMI interface to communicate directly with actual field controllers (HIMA HiMatrix F35), and the lack of dynamic field configuration for IP/port maps.</p>


<div class="kb-table-container kb-table-container2413_b129f2-4e wp-block-kadence-table"><table class="kb-table kb-table2413_b129f2-4e">
<tr class="kb-table-row kb-table-row2413_2d19ce-c6">
<th  scope="col" class="kb-table-data kb-table-data2413_9de0c4-7e">

<p class="wp-block-paragraph">Component</p>

</th>

<th  scope="col" class="kb-table-data kb-table-data2413_49d23c-7d">

<p class="wp-block-paragraph">Status / Requirement</p>

</th>
</tr>

<tr class="kb-table-row kb-table-row2413_b57dba-d0">
<td  class="kb-table-data kb-table-data2413_1c3cfb-b7">

<p class="wp-block-paragraph"><strong>HMI Platform</strong></p>

</td>

<td  class="kb-table-data kb-table-data2413_66c686-3a">

<p class="wp-block-paragraph">Lack of a native Modbus interface within SCADE Display</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2413_c5b01f-5b">
<td  class="kb-table-data kb-table-data2413_61a89d-aa">

<p class="wp-block-paragraph"><strong>Control Layer</strong></p>

</td>

<td  class="kb-table-data kb-table-data2413_ffb557-da">

<p class="wp-block-paragraph">Mandatory communication with HIMA HiMatrix F35 PLCs via Modbus TCP/IP</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2413_5bf099-a4">
<td  class="kb-table-data kb-table-data2413_c7ed61-ab">

<p class="wp-block-paragraph"><strong>Field Configuration</strong></p>

</td>

<td  class="kb-table-data kb-table-data2413_8581c0-b6">

<p class="wp-block-paragraph">Runtime management of varying IP/port and register maps per station</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2413_43caa2-cf">
<td  class="kb-table-data kb-table-data2413_abbf07-ac">

<p class="wp-block-paragraph"><strong>System Size</strong></p>

</td>

<td  class="kb-table-data kb-table-data2413_2f2362-31">

<p class="wp-block-paragraph">Local interlocking circuit comprising 4 track circuits, 6 signals, 1 switch, and 4 routes</p>

</td>
</tr>
</table></div>


<h2 class="wp-block-heading" id="solution-architecture-and-execution">Solution Architecture and Execution</h2>



<h3 class="wp-block-heading" id="architectural-approach">Architectural Approach</h3>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph"><strong><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f4a1.png" alt="💡" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Architectural Constraint Assessment:</strong>&nbsp;The generated SCADE application used in this setup provided no native Modbus interface. An external C middleware layer was therefore developed to exchange data with the HIMA controller while keeping the HMI logic separate from the communication layer. This is consistent with EN 50128 practice for separating application logic from communication.</p>
</blockquote>



<p class="wp-block-paragraph">A&nbsp;<strong>C99 middleware wrapper</strong>&nbsp;layer was designed between SCADE&#8217;s generated code and the libmodbus library:</p>



<figure class="wp-block-kadence-image kb-image2413_5430a3-6a size-full"><img decoding="async" width="633" height="252" src="https://muisik.com/wp-content/uploads/2026/03/scade-middleware-mimari.png" alt="" class="kb-img wp-image-2411" srcset="https://muisik.com/wp-content/uploads/2026/03/scade-middleware-mimari.png 633w, https://muisik.com/wp-content/uploads/2026/03/scade-middleware-mimari-300x119.png 300w" sizes="(max-width: 633px) 100vw, 633px" /></figure>



<h3 class="wp-block-heading" id="communication-flow">Communication Flow</h3>



<figure class="wp-block-kadence-image kb-image2413_ac6211-4a size-full"><img decoding="async" width="691" height="242" src="https://muisik.com/wp-content/uploads/2026/03/scade-middleware-haberlesme.png" alt="" class="kb-img wp-image-2410" srcset="https://muisik.com/wp-content/uploads/2026/03/scade-middleware-haberlesme.png 691w, https://muisik.com/wp-content/uploads/2026/03/scade-middleware-haberlesme-300x105.png 300w" sizes="(max-width: 691px) 100vw, 691px" /></figure>



<h3 class="wp-block-heading" id="applied-methodology">Applied Methodology</h3>



<ul class="wp-block-list">
<li><strong>Zero-Copy Integration:</strong>&nbsp;Copy overhead was eliminated by hooking directly into the SCADE main loop.</li>



<li><strong>Dynamic Configuration:</strong>&nbsp;A&nbsp;<strong>3-region INI file</strong>&nbsp;was used to prevent recompilation requirements during field deployment.</li>
</ul>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph"><strong>Fallback behaviour:</strong>&nbsp;If the configuration file is missing or invalid, the PoC writes a local default configuration for laboratory use. A production implementation should fail safely or require explicit operator confirmation.</p>
</blockquote>



<ul class="wp-block-list">
<li><strong>Auto-Reconnection:</strong>&nbsp;Connection drops in industrial environments are inevitable; an autonomous auto-reconnect cycle was activated.</li>



<li><strong>Change Detection:</strong>&nbsp;A&nbsp;<strong>batch read and selective write</strong>&nbsp;strategy was implemented to optimize network traffic.</li>
</ul>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph"><strong>Architectural Decision:</strong>&nbsp;Since HMI hardware&#8217;s capability for simultaneous physical command processing is limited, outputs are evaluated in a sequential loop. This structural preference prevents unnecessary fieldbus traffic (network flooding).</p>
</blockquote>



<ul class="wp-block-list">
<li><strong>Thread-Safe Logging:</strong>&nbsp;Every event in critical systems must be logged securely.</li>
</ul>



<h3 class="wp-block-heading" id="interlocking-scope">Interlocking Scope</h3>


<div class="kb-table-container kb-table-container2413_a93f6b-4f wp-block-kadence-table"><table class="kb-table kb-table2413_a93f6b-4f">
<tr class="kb-table-row kb-table-row2413_861738-f0">
<th  scope="col" class="kb-table-data kb-table-data2413_e8f6f1-e7">

<p class="wp-block-paragraph">Component</p>

</th>

<th  scope="col" class="kb-table-data kb-table-data2413_18e129-a5">

<p class="wp-block-paragraph">Quantity</p>

</th>

<th  scope="col" class="kb-table-data kb-table-data2413_abf6ec-c3">

<p class="wp-block-paragraph">Details</p>

</th>
</tr>

<tr class="kb-table-row kb-table-row2413_c91380-69">
<td  class="kb-table-data kb-table-data2413_f0e105-80">

<p class="wp-block-paragraph"><strong>Track Circuit (TC)</strong></p>

</td>

<td  class="kb-table-data kb-table-data2413_918113-5d">

<p class="wp-block-paragraph">4</p>

</td>

<td  class="kb-table-data kb-table-data2413_08f453-92">

<p class="wp-block-paragraph">TC01–TC04</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2413_189543-f1">
<td  class="kb-table-data kb-table-data2413_84b9df-85">

<p class="wp-block-paragraph"><strong>Signal (SN)</strong></p>

</td>

<td  class="kb-table-data kb-table-data2413_7e14fd-3a">

<p class="wp-block-paragraph">6</p>

</td>

<td  class="kb-table-data kb-table-data2413_d8e4a8-22">

<p class="wp-block-paragraph">Input + output signals</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2413_e5ba77-05">
<td  class="kb-table-data kb-table-data2413_ec6f78-96">

<p class="wp-block-paragraph"><strong>Switch (SW)</strong></p>

</td>

<td  class="kb-table-data kb-table-data2413_2786bf-0a">

<p class="wp-block-paragraph">1</p>

</td>

<td  class="kb-table-data kb-table-data2413_5fd265-ee">

<p class="wp-block-paragraph">Normal / Reverse</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2413_43c89f-bf">
<td  class="kb-table-data kb-table-data2413_b7ce63-1b">

<p class="wp-block-paragraph"><strong>Route (RT)</strong></p>

</td>

<td  class="kb-table-data kb-table-data2413_264b2f-f2">

<p class="wp-block-paragraph">4</p>

</td>

<td  class="kb-table-data kb-table-data2413_c58649-25">

<p class="wp-block-paragraph">RT01–RT04 combinations</p>

</td>
</tr>
</table></div>


<p class="wp-block-paragraph"><strong>Example route:</strong>&nbsp;RT01: SN01E → TC01 → TC04 → TC02 → SN02E (Switch: Normal)</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph"><strong>Safety Rule:</strong>&nbsp;Based on critical design principles, all signals not explicitly demanded by the system are configured to default to a restrictive state (red).</p>
</blockquote>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading" id="results-and-operational-takeaways">Results and Operational Takeaways</h2>



<p class="wp-block-paragraph"><strong>Quantitative Gain:</strong>&nbsp;<em>(Potential values obtained during laboratory PoC tests)</em></p>


<div class="kb-table-container kb-table-container2413_58f337-5d wp-block-kadence-table"><table class="kb-table kb-table2413_58f337-5d">
<tr class="kb-table-row kb-table-row2413_d38a1d-a8">
<th  scope="col" class="kb-table-data kb-table-data2413_a57201-97">

<p class="wp-block-paragraph">Metric</p>

</th>

<th  scope="col" class="kb-table-data kb-table-data2413_a8b23b-5d">

<p class="wp-block-paragraph">Value / Status</p>

</th>
</tr>

<tr class="kb-table-row kb-table-row2413_5b8769-a0">
<td  class="kb-table-data kb-table-data2413_8f2efe-73">

<p class="wp-block-paragraph"><strong>Cycle Time</strong></p>

</td>

<td  class="kb-table-data kb-table-data2413_f00e4e-04">

<p class="wp-block-paragraph">~8ms average latency</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2413_e120b1-ef">
<td  class="kb-table-data kb-table-data2413_c5eaa0-29">

<p class="wp-block-paragraph"><strong>Connection Mgmt</strong></p>

</td>

<td  class="kb-table-data kb-table-data2413_0eaa93-e3">

<p class="wp-block-paragraph">Automatic reconnection upon failure (auto-reconnect)</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2413_0c09b9-d2">
<td  class="kb-table-data kb-table-data2413_1020ff-ce">

<p class="wp-block-paragraph"><strong>Configuration</strong></p>

</td>

<td  class="kb-table-data kb-table-data2413_fd288e-f4">

<p class="wp-block-paragraph">Compilation-independent commissioning via parametric structure</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2413_aa5057-fa">
<td  class="kb-table-data kb-table-data2413_f07991-e4">

<p class="wp-block-paragraph"><strong>Network Traffic</strong></p>

</td>

<td  class="kb-table-data kb-table-data2413_597fd2-e8">

<p class="wp-block-paragraph">Transmission of solely changed registers via change detection algorithms</p>

</td>
</tr>

<tr class="kb-table-row kb-table-row2413_a69b14-59">
<td  class="kb-table-data kb-table-data2413_1cbe22-f5">

<p class="wp-block-paragraph"><strong>Validation</strong></p>

</td>

<td  class="kb-table-data kb-table-data2413_c5312b-e5">

<p class="wp-block-paragraph">Validated on HIMA HiMatrix F35 PLC (SILworX) and physical testbed</p>

</td>
</tr>
</table></div>


<h2 class="wp-block-heading" id="project-visuals">Project Visuals</h2>


<div class="kb-gallery-wrap-id-2413_3a83b2-bb alignnone wp-block-kadence-advancedgallery"><div class="kb-gallery-ul kb-gallery-non-static kb-gallery-type-fluidcarousel kb-gallery-id-2413_3a83b2-bb kb-gallery-caption-style-bottom-hover kb-gallery-filter-none" data-image-filter="none" data-lightbox-caption="true"><div class="kt-blocks-carousel splide kt-carousel-container-dotstyle-dark kt-carousel-arrowstyle-whiteondark kt-carousel-dotstyle-dark kb-slider-group-arrow kb-slider-arrow-position-center" data-slider-anim-speed="400" data-slider-scroll="1" data-slider-arrows="true" data-slider-dots="true" data-slider-hover-pause="false" data-slider-auto="" data-slider-speed="7000" data-slider-type="fluidcarousel" data-slider-center-mode="true" data-slider-gap="10px" data-slider-gap-tablet="10px" data-slider-gap-mobile="10px" data-show-pause-button="false"><div class="splide__track"><ul class="kt-blocks-carousel-init kb-blocks-fluid-carousel splide__list"><li class="kb-slide-item kb-gallery-carousel-item splide__slide"><div class="kadence-blocks-gallery-item"><div class="kadence-blocks-gallery-item-inner"><figure class="kb-gallery-figure kadence-blocks-gallery-item-hide-caption"><div class="kb-gal-image-radius"><div class="kb-gallery-image-contain" ><img decoding="async" src="https://muisik.com/wp-content/uploads/2026/03/scade-modbus-hmi-1024x802.png" width="1024" height="802" alt="" data-full-image="https://muisik.com/wp-content/uploads/2026/03/scade-modbus-hmi.png" data-light-image="https://muisik.com/wp-content/uploads/2026/03/scade-modbus-hmi.png" data-id="2407" class="wp-image-2407 skip-lazy" srcset="https://muisik.com/wp-content/uploads/2026/03/scade-modbus-hmi-1024x802.png 1024w, https://muisik.com/wp-content/uploads/2026/03/scade-modbus-hmi-300x235.png 300w, https://muisik.com/wp-content/uploads/2026/03/scade-modbus-hmi-768x601.png 768w, https://muisik.com/wp-content/uploads/2026/03/scade-modbus-hmi.png 1295w" sizes="(max-width: 1024px) 100vw, 1024px" /></div></div></figure></div></div></li><li class="kb-slide-item kb-gallery-carousel-item splide__slide"><div class="kadence-blocks-gallery-item"><div class="kadence-blocks-gallery-item-inner"><figure class="kb-gallery-figure kadence-blocks-gallery-item-hide-caption"><div class="kb-gal-image-radius"><div class="kb-gallery-image-contain" ><img decoding="async" src="https://muisik.com/wp-content/uploads/2026/03/scade-modbus-lab3.jpg" width="777" height="518" alt="Model train layout in spacious room" data-full-image="https://muisik.com/wp-content/uploads/2026/03/scade-modbus-lab3.jpg" data-light-image="https://muisik.com/wp-content/uploads/2026/03/scade-modbus-lab3.jpg" data-id="2406" class="wp-image-2406 skip-lazy" srcset="https://muisik.com/wp-content/uploads/2026/03/scade-modbus-lab3.jpg 777w, https://muisik.com/wp-content/uploads/2026/03/scade-modbus-lab3-300x200.jpg 300w, https://muisik.com/wp-content/uploads/2026/03/scade-modbus-lab3-768x512.jpg 768w" sizes="(max-width: 777px) 100vw, 777px" /></div></div></figure></div></div></li><li class="kb-slide-item kb-gallery-carousel-item splide__slide"><div class="kadence-blocks-gallery-item"><div class="kadence-blocks-gallery-item-inner"><figure class="kb-gallery-figure kadence-blocks-gallery-item-hide-caption"><div class="kb-gal-image-radius"><div class="kb-gallery-image-contain" ><img decoding="async" src="https://muisik.com/wp-content/uploads/2026/03/scade-modbus-lab1.jpg" width="777" height="518" alt="" data-full-image="https://muisik.com/wp-content/uploads/2026/03/scade-modbus-lab1.jpg" data-light-image="https://muisik.com/wp-content/uploads/2026/03/scade-modbus-lab1.jpg" data-id="2408" class="wp-image-2408 skip-lazy" srcset="https://muisik.com/wp-content/uploads/2026/03/scade-modbus-lab1.jpg 777w, https://muisik.com/wp-content/uploads/2026/03/scade-modbus-lab1-300x200.jpg 300w, https://muisik.com/wp-content/uploads/2026/03/scade-modbus-lab1-768x512.jpg 768w" sizes="(max-width: 777px) 100vw, 777px" /></div></div></figure></div></div></li><li class="kb-slide-item kb-gallery-carousel-item splide__slide"><div class="kadence-blocks-gallery-item"><div class="kadence-blocks-gallery-item-inner"><figure class="kb-gallery-figure kadence-blocks-gallery-item-hide-caption"><div class="kb-gal-image-radius"><div class="kb-gallery-image-contain" ><img decoding="async" src="https://muisik.com/wp-content/uploads/2026/03/scade-modbus-lab2.jpg" width="777" height="518" alt="" data-full-image="https://muisik.com/wp-content/uploads/2026/03/scade-modbus-lab2.jpg" data-light-image="https://muisik.com/wp-content/uploads/2026/03/scade-modbus-lab2.jpg" data-id="2409" class="wp-image-2409 skip-lazy" srcset="https://muisik.com/wp-content/uploads/2026/03/scade-modbus-lab2.jpg 777w, https://muisik.com/wp-content/uploads/2026/03/scade-modbus-lab2-300x200.jpg 300w, https://muisik.com/wp-content/uploads/2026/03/scade-modbus-lab2-768x512.jpg 768w" sizes="(max-width: 777px) 100vw, 777px" /></div></div></figure></div></div></li></ul></div></div></div></div>


<h2 class="wp-block-heading" id="related-links">Related Links</h2>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f4c2.png" alt="📂" class="wp-smiley" style="height: 1em; max-height: 1em;" />&nbsp;<strong>Source Code:</strong>&nbsp;<a href="https://github.com/isikmuhamm/ansys-scade-modbus-integration-middleware" rel="nofollow noopener" target="_blank">Github/ansys-scade-modbus-integration-middleware</a>&nbsp;<br><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f517.png" alt="🔗" class="wp-smiley" style="height: 1em; max-height: 1em;" /> <strong>Download TOK 2025 Paper:</strong>&nbsp;<a href="https://muisik.com/wp-content/uploads/2026/03/demiryolu_scade_modbus_makale.pdf">SCADE Modbus Paper Turkish (PDF)</a></p>
</blockquote>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p class="wp-block-paragraph"><strong>Authors:</strong>&nbsp;Dora Demir¹, İbrahim Can Kolotoğlu², Muhammet Işık², Serhat Boynukalın³, Mehmet Turan Söylemez²<br>¹ ITU Electronics and Communication Eng. | ² ITU Control and Automation Eng. | ³ ITU Graduate School</p>



<p class="wp-block-paragraph"><em>This work was conducted at the ITU EEF Railway Systems Laboratory and published at the&nbsp;<strong>Turkish Automatic Control 2025 (TOK 2025)</strong>&nbsp;conference.</em></p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
