<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="https://script.spoken-tutorial.org/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://script.spoken-tutorial.org/index.php?action=history&amp;feed=atom&amp;title=OpenPLC-version1-with-LDmicro%2FC2%2FSimulation-and-Compilation%2FEnglish</id>
		<title>OpenPLC-version1-with-LDmicro/C2/Simulation-and-Compilation/English - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://script.spoken-tutorial.org/index.php?action=history&amp;feed=atom&amp;title=OpenPLC-version1-with-LDmicro%2FC2%2FSimulation-and-Compilation%2FEnglish"/>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php?title=OpenPLC-version1-with-LDmicro/C2/Simulation-and-Compilation/English&amp;action=history"/>
		<updated>2026-04-30T20:32:05Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.23.17</generator>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php?title=OpenPLC-version1-with-LDmicro/C2/Simulation-and-Compilation/English&amp;diff=51499&amp;oldid=prev</id>
		<title>Nancyvarkey at 11:02, 6 April 2020</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php?title=OpenPLC-version1-with-LDmicro/C2/Simulation-and-Compilation/English&amp;diff=51499&amp;oldid=prev"/>
				<updated>2020-04-06T11:02:38Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://script.spoken-tutorial.org/index.php?title=OpenPLC-version1-with-LDmicro/C2/Simulation-and-Compilation/English&amp;amp;diff=51499&amp;amp;oldid=51336&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Nancyvarkey</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php?title=OpenPLC-version1-with-LDmicro/C2/Simulation-and-Compilation/English&amp;diff=51336&amp;oldid=prev</id>
		<title>Priyanka.guntaka123: Created page with &quot; {| style=&quot;border-spacing:0;&quot; | style=&quot;border:1pt solid #000000;padding:0.176cm;&quot;| &lt;center&gt;'''Visual Cue'''&lt;/center&gt; | style=&quot;border:1pt solid #000000;padding:0.176cm;&quot;| &lt;cent...&quot;</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php?title=OpenPLC-version1-with-LDmicro/C2/Simulation-and-Compilation/English&amp;diff=51336&amp;oldid=prev"/>
				<updated>2020-03-16T11:35:20Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot; {| style=&amp;quot;border-spacing:0;&amp;quot; | style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &amp;lt;center&amp;gt;&amp;#039;&amp;#039;&amp;#039;Visual Cue&amp;#039;&amp;#039;&amp;#039;&amp;lt;/center&amp;gt; | style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &amp;lt;cent...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;
{| style=&amp;quot;border-spacing:0;&amp;quot;&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &amp;lt;center&amp;gt;'''Visual Cue'''&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &amp;lt;center&amp;gt;'''Narration'''&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 1: &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Welcome to the spoken tutorial on '''Simulation and Compilation''' in LDmicro.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 2: &lt;br /&gt;
&lt;br /&gt;
Learning Objectives&lt;br /&gt;
&lt;br /&gt;
* Simulate a ladder diagram &lt;br /&gt;
* Compile a ladder diagram in LDmicro&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will learn how to&lt;br /&gt;
&lt;br /&gt;
* '''Simulate''' a ladder diagram and&lt;br /&gt;
* '''Compile''' a ladder diagram in '''LDmicro'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 3:&lt;br /&gt;
&lt;br /&gt;
System Requirements&lt;br /&gt;
&lt;br /&gt;
* Ubuntu Linux 18.04''' '''operating system&lt;br /&gt;
* LDmicro&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To record this tutorial I am using:&lt;br /&gt;
&lt;br /&gt;
* '''Ubuntu Linux''' 18.04 operating system&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 4: Pre-requisites&lt;br /&gt;
&lt;br /&gt;
* How to create a ladder diagram in LDmicro&lt;br /&gt;
* If not, please refer to the relevant tutorials in this series from [https://spoken-tutorial.org/ Home | spoken-tutorial.org]&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To follow this tutorial, you should know&lt;br /&gt;
&lt;br /&gt;
* How to create a ladder diagram in '''LDmicro'''. &lt;br /&gt;
* If not, please refer to the relevant tutorials in this series on this website.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| First we will know about''' LDmicro simulator.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 5:&lt;br /&gt;
&lt;br /&gt;
LDmicro - Simulator&lt;br /&gt;
&lt;br /&gt;
* LDmicro has an in-built simulator&lt;br /&gt;
* It helps us to verify ladder diagram before experimenting on the actual hardware.&lt;br /&gt;
* It reduces the hardware damage due to improper code&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
* '''LDmicro''' has an in-built '''simulator'''.&lt;br /&gt;
* It helps us to verify ladder diagram before experimenting on the actual hardware. &lt;br /&gt;
* It reduces the hardware damage due to improper code.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| narration&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, we’ll see how to simulate a ladder diagram.&lt;br /&gt;
&lt;br /&gt;
We will use the ladder diagram file, '''sample.ld '''which we created earlier.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 6: Code Files - sample.ld&lt;br /&gt;
&lt;br /&gt;
* The file '''sample.ld '''used in this tutorial is available in the '''Code files''' link of this tutorial page &lt;br /&gt;
* Please download and use them while practising&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The file '''sample.ld''' is available in the '''Code files''' link of this tutorial. &lt;br /&gt;
&lt;br /&gt;
Please download and use them while practising.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open LDmicro&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us open '''LDmicro'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click ‘File -&amp;gt; Open’&lt;br /&gt;
&lt;br /&gt;
Select the file&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In the menu bar, click on '''File '''and then''' Open.'''&lt;br /&gt;
&lt;br /&gt;
Select the file '''sample.ld '''from the location where you have saved.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on “Simulate -&amp;gt; Simulation Mode”&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In the menu bar, click on '''Simulate '''then on '''Simulation Mode'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight first rung&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In the '''Simulation''' '''Mode''', the whole ladder diagram changes to gray.&lt;br /&gt;
&lt;br /&gt;
The cursor also disappears.&lt;br /&gt;
&lt;br /&gt;
We can’t place an instruction in the '''Simulation''' mode.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight second rung&lt;br /&gt;
&lt;br /&gt;
Highlight first rung&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The instructions that are energized appear in bright red color.&lt;br /&gt;
&lt;br /&gt;
The instructions that are not energized appear in gray color.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight second rung&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Here, the '''LED2''' is energized as it is directly connected to the positive rail.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight ‘switch’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The '''LED1''' is not energized.&lt;br /&gt;
&lt;br /&gt;
This is because there is a '''switch''' in between the positive rail and '''LED1'''.&lt;br /&gt;
&lt;br /&gt;
For '''LED1''' to be energized, '''switch''' should be '''ON'''.&lt;br /&gt;
&lt;br /&gt;
i.e, It should be given value 1.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on ‘switch’ in I/O list and highlight the I/O list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Double click on ‘switch’ in the editor window and highlight the I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can change the state of the inputs in two ways.&lt;br /&gt;
&lt;br /&gt;
1. Double-click on the list that appears at the bottom of the screen.&lt;br /&gt;
&lt;br /&gt;
We can see that the state changes to 1.&lt;br /&gt;
&lt;br /&gt;
2. Otherwise, double-click on appropriate instruction in the ladder diagram.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight state of the ‘switch’ in I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Note that '''LED1''' isn’t energized even after changing the state of the '''switch'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This is because the change will not be reflected until the PLC cycles.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| For the changes to be reflected, choose either one of the below options.&lt;br /&gt;
&lt;br /&gt;
# '''Simulate -&amp;gt; Start Real Time Simulation''' or &lt;br /&gt;
# '''Single cycle''' option.&lt;br /&gt;
&lt;br /&gt;
If you choose ‘'''Single Cycle'''’ option, the '''PLC''' cycles only for one time.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click ‘Simulate -&amp;gt; Single cycle’&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Highlight first rung&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Select ‘'''Single Cycle'''’.&lt;br /&gt;
&lt;br /&gt;
Now we can observe that the first '''rung''' is energized.&lt;br /&gt;
&lt;br /&gt;
That is, '''LED1''' is glowing.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on the ‘switch’ in the I/O list&lt;br /&gt;
&lt;br /&gt;
Highlight first rung&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now again change the state of the ‘'''switch'''’ from 1 to 0.&lt;br /&gt;
&lt;br /&gt;
We can see that the '''LED1''' is still glowing even after the '''switch''' is off.&lt;br /&gt;
&lt;br /&gt;
It means that input changes are not reflected.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Therefore, we need to choose ‘'''Single Cycle’''' every time we change the input state.&lt;br /&gt;
&lt;br /&gt;
Use the ‘'''Single Cycle'''’ option when you want to debug the program step by step.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| But, this is not the case with '''Real-Time Simulation'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Choose ‘Simulation -&amp;gt; Real-Time Simulation’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In the menu bar, select ‘'''Simulate -&amp;gt; Start Real-Time Simulation'''’.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on the ‘switch’ in the I/O list&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Change the state of the ‘'''switch'''’ from 0 to 1.&lt;br /&gt;
&lt;br /&gt;
We can observe that the state of '''LED1''' changes to 1 immediately.&lt;br /&gt;
&lt;br /&gt;
Thus, the outputs gets auto-updated according to the input changes.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click ‘Simulate -&amp;gt; Halt Simulation’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can halt simulation by clicking on ‘'''Simulate -&amp;gt;''' '''Halt Simulation'''’.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click ‘SImulate -&amp;gt; Simulation mode’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then click on ‘'''Simulate'''’ and on ‘'''Simulation mode'''’ for one more time.&lt;br /&gt;
&lt;br /&gt;
This will turn off the simulation mode.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| narration&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Next, we’ll see the effects of cycle time on ladder diagram.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 7: Cycle time&lt;br /&gt;
&lt;br /&gt;
It includes&lt;br /&gt;
&lt;br /&gt;
# reading the input states&lt;br /&gt;
# executing the program&lt;br /&gt;
# updating the outputs&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The cycle time of a PLC is the time taken from &lt;br /&gt;
&lt;br /&gt;
# reading the input states, &lt;br /&gt;
# executing the program and &lt;br /&gt;
# updating the outputs.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now we’ll see the effect of cycle time in '''LDmicro.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch back to LDmicro.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on Settings&lt;br /&gt;
&lt;br /&gt;
Click on MCU parameters&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In the menu bar, click on '''‘Settings’'''.&lt;br /&gt;
&lt;br /&gt;
Then click on '''MCU parameters.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight cycle time&lt;br /&gt;
&lt;br /&gt;
Change the cycle time to 5s&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| By default, the cycle time is set to 10 milliseconds.&lt;br /&gt;
&lt;br /&gt;
Change it to 5s i.e. 5000ms.&lt;br /&gt;
&lt;br /&gt;
Then, click on the '''OK''' button in the top right of the window.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click Simulate -&amp;gt; Simulation mode&lt;br /&gt;
&lt;br /&gt;
Click Simulate -&amp;gt; Start Real-time simulation&lt;br /&gt;
&lt;br /&gt;
Double click on Xswitch in the I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now start''' real time simulation''' as shown.&lt;br /&gt;
&lt;br /&gt;
Change the state of the '''‘switch’''' to 1.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to YLED1 state.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| You can observe that the '''LED1''' doesn’t change its state immediately.&lt;br /&gt;
&lt;br /&gt;
Instead it takes upto 5s to get its state updated.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on Simulate -&amp;gt; Simulation mode&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Turn off the simulation mode as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Next, we will see how to compile a ladder diagram.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 8: Pre-compilation checklist&lt;br /&gt;
&lt;br /&gt;
* Microcontroller selection&lt;br /&gt;
* MCU Parameters&lt;br /&gt;
* I/O assignment&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Before compiling, we need to check the following:&lt;br /&gt;
&lt;br /&gt;
* Selection of proper Microcontroller&lt;br /&gt;
&lt;br /&gt;
* Setting Microcontroller parameters&lt;br /&gt;
&lt;br /&gt;
* Assigning ports to I/O instructions&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch to '''LDmicro''' interface.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on ‘Settings’ &amp;gt;&amp;gt; Click ‘Microcontroller’ &lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| First, we’ve to select the part number of the microcontroller. &lt;br /&gt;
&lt;br /&gt;
In the menu bar, click on '''Settings -&amp;gt; Microcontroller''' &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the list of microcontrollers&lt;br /&gt;
&lt;br /&gt;
Select AVR ATmega16 40-PDIP&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.176cm;&amp;quot;| Here, you can observe the list of supported microcontrollers by '''LDmicro'''.&lt;br /&gt;
&lt;br /&gt;
I’m using '''Atmel AVR ATmega16 40-PDIP.'''&lt;br /&gt;
&lt;br /&gt;
So, I’ll select ‘'''AVR ATmega16 40-PDIP'''’.&lt;br /&gt;
&lt;br /&gt;
If you are using a different microcontroller, select accordingly from the menu.&lt;br /&gt;
&lt;br /&gt;
Because different microcontrollers have different hex files for the same program.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click ‘Settings’ &amp;gt;&amp;gt; Click ‘MCU parameters’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now click on '''Settings -&amp;gt; MCU Parameters'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to ‘PLC Configuration’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| ‘'''PLC Configuration'''’ pop-up window appears.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Here you can set different parameters.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight ‘Cycle time’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Change the cycle time value to 10 milliseconds.&lt;br /&gt;
&lt;br /&gt;
10 milliseconds is a good value for most of the applications.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Change Crystal frequency to 16&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Next is '''Crystal Frequency:'''&lt;br /&gt;
&lt;br /&gt;
* We have attached a 16 MHz external crystal in the OpenPLC hardware. &lt;br /&gt;
* So set crystal frequency to 16 if you are using the same hardware. &lt;br /&gt;
* Always set proper values.&lt;br /&gt;
* Otherwise it may cause communication and timers to behave inappropriately.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight ‘Baud rate’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Next is '''UART Baud rate''':&lt;br /&gt;
&lt;br /&gt;
By default, it is in disable state.&lt;br /&gt;
&lt;br /&gt;
It will be enabled only when you are using any of the serial instructions.&lt;br /&gt;
&lt;br /&gt;
We will learn about this in detail when we use serial instructions.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click the OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| After setting the microcontroller parameters properly, click on the '''OK''' button.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to the default names&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We should change the default names of the instructions before compiling the logic.&lt;br /&gt;
&lt;br /&gt;
Please remember this whenever you compile the logic.&lt;br /&gt;
&lt;br /&gt;
We have changed the default names for this ladder diagram in the earlier tutorial.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, we must assign '''I/O '''pin to each '''I/O''' instruction. &lt;br /&gt;
&lt;br /&gt;
Because different I/O assignment generates different hex files.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| On LDmicro interface:&lt;br /&gt;
&lt;br /&gt;
Double-click on ‘switch’ in I/O list &lt;br /&gt;
&lt;br /&gt;
Select ‘PA7’&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To do so, double-click on ‘'''Xswitch'''’ in the '''I/O list'''.&lt;br /&gt;
&lt;br /&gt;
A pop up window opens showing the unallocated pins.&lt;br /&gt;
&lt;br /&gt;
Just select a pin accordingly.&lt;br /&gt;
&lt;br /&gt;
I’ll select ‘'''PA7'''’, which is the 7th pin of Port A.&lt;br /&gt;
&lt;br /&gt;
Then, click on the '''OK''' button.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on ‘LED1’ in I/O list &lt;br /&gt;
&lt;br /&gt;
Select ‘PC0’&lt;br /&gt;
&lt;br /&gt;
Click OK&lt;br /&gt;
&lt;br /&gt;
Double-click on ‘LED2’ in I/O list &lt;br /&gt;
&lt;br /&gt;
Select ‘PC1’&lt;br /&gt;
&lt;br /&gt;
Click OK&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Similarly, double-click on '''YLED1''' and assign '''PC0''' as shown.&lt;br /&gt;
&lt;br /&gt;
Then double-click on '''YLED2''' and assign '''PC1'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We have assigned '''I/O pin''' to each '''I/O instruction.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, let us compile.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click ‘Compile’ &amp;gt;&amp;gt; Click ‘Compile’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In the menu bar, click on '''Compile '''then on '''Compile.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Desktop&lt;br /&gt;
&lt;br /&gt;
Rename it as ‘sample’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''Save''' pop-up window opens.&lt;br /&gt;
&lt;br /&gt;
I’ll save it in the folder '''LDmicro''' on '''Desktop''' with the same name '''‘sample.hex’.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will get a pop-up window which shows ‘'''Compile Successful'''’.&lt;br /&gt;
&lt;br /&gt;
Click on the '''OK''' button.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight ‘Compile -&amp;gt; Compile As’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| If you want to save it under other name choose ‘'''Compile -&amp;gt; Compile As'''’.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This brings us to the end of this tutorial. &lt;br /&gt;
&lt;br /&gt;
Let us summarize.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 9:&lt;br /&gt;
&lt;br /&gt;
Summary&lt;br /&gt;
&lt;br /&gt;
* Simulate a ladder diagram &lt;br /&gt;
* Compile a ladder diagram in LDmicro&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we learnt to&lt;br /&gt;
&lt;br /&gt;
* '''Simulate''' a ladder diagram and&lt;br /&gt;
* '''Compile''' a ladder diagram in '''LDmicro'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 10:&lt;br /&gt;
&lt;br /&gt;
Assignment: &lt;br /&gt;
&lt;br /&gt;
* Change the cycle time to 3s and 10s&lt;br /&gt;
* Observe the changes while simulating&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| As an assignment,&lt;br /&gt;
&lt;br /&gt;
# Change the cycle time to 3 secs and then to 10 secs&lt;br /&gt;
# Observe the changes in simulation time.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 11:&lt;br /&gt;
&lt;br /&gt;
About Spoken Tutorial project&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
&lt;br /&gt;
Please download and watch it&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 12:&lt;br /&gt;
&lt;br /&gt;
Spoken Tutorial workshops&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The Spoken Tutorial Project Team conducts workshops and gives certificates.&lt;br /&gt;
&lt;br /&gt;
For more details, please write to us.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 13:&lt;br /&gt;
&lt;br /&gt;
Forum questions&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Please post your timed queries in this forum. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 14:&lt;br /&gt;
&lt;br /&gt;
Forum for specific questions:&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Do you have any general / technical questions on OpenPLC?&lt;br /&gt;
&lt;br /&gt;
Please visit the FOSSEE forum and post your question.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 15:&lt;br /&gt;
&lt;br /&gt;
Acknowledgement&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Spoken Tutorial Project is funded by MHRD, Government of India. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 16:&lt;br /&gt;
&lt;br /&gt;
Thank you slide&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This tutorial has been contributed by FOSSEE and Spoken Tutorial Project, IIT Bombay.&lt;br /&gt;
&lt;br /&gt;
And this is Harsha Priyanka from FOSSEE team, signing off. &lt;br /&gt;
&lt;br /&gt;
Thanks for watching.&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Priyanka.guntaka123</name></author>	</entry>

	</feed>