<?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/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Priyanka.guntaka123&amp;*</id>
		<title>Script | Spoken-Tutorial - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://script.spoken-tutorial.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Priyanka.guntaka123&amp;*"/>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/Special:Contributions/Priyanka.guntaka123"/>
		<updated>2026-04-30T07:40:55Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.23.17</generator>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/Scilab---FOSSEE-Optimisation-Toolbox/C2/Installation-of-FOSSEE-Optimization-Toolbox/English</id>
		<title>Scilab---FOSSEE-Optimisation-Toolbox/C2/Installation-of-FOSSEE-Optimization-Toolbox/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/Scilab---FOSSEE-Optimisation-Toolbox/C2/Installation-of-FOSSEE-Optimization-Toolbox/English"/>
				<updated>2022-02-07T16:35:37Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Title of script''': Installation of '''FOSSEE Optimization Toolbox'''&lt;br /&gt;
&lt;br /&gt;
'''Author: Harpreet Singh, Georgey John, Rupak Rokade and Anandajith T S'''&lt;br /&gt;
&lt;br /&gt;
'''Keywords:Scilab, FOSSEE Optimization Toolbox, Installation, FOT, Optimization Theory'''&lt;br /&gt;
{|border=1&lt;br /&gt;
! '''Visual Cue'''&lt;br /&gt;
! '''Narration'''&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Title Slide'''&lt;br /&gt;
| Hello and welcome to the Spoken Tutorial on “'''Installation of FOSSEE Optimization Toolbox in Scilab'''”.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Learning Objectives'''&lt;br /&gt;
|In this tutorial, we will learn how to:&lt;br /&gt;
&lt;br /&gt;
*'''Install''' the '''FOSSEE Optimization''' '''Toolbox'''. &lt;br /&gt;
*'''Execute''' a few '''examples''' using the '''toolbox'''.  &lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''System Requirements'''&lt;br /&gt;
|To record this tutorial, I am using&lt;br /&gt;
&lt;br /&gt;
*'''Ubuntu 18.04''' as the operating system and &lt;br /&gt;
*'''Scilab 6.1.0'''  &lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Installation Requirements'''&lt;br /&gt;
|For the '''installation'''-&lt;br /&gt;
*We require a working '''Internet connection'''.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Pre-requisite'''&lt;br /&gt;
|Before practising this tutorial, a learner should have :&lt;br /&gt;
*Basic knowledge of '''Scilab''' and '''Optimization Theory'''.&lt;br /&gt;
&lt;br /&gt;
For '''Scilab''', please refer to the '''Scilab''' tutorials available on the '''Spoken Tutorial''' website.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''What is FOSSEE Optimization Toolbox?'''&lt;br /&gt;
| '''What is FOSSEE Optimization Toolbox?'''&lt;br /&gt;
*'''FOT''' is a '''toolbox''' in '''Scilab.''' &lt;br /&gt;
*It solves '''optimization''' problems using '''functions''' like '''linprog, fmincon''' and many others. &lt;br /&gt;
*It can solve '''Linear Programming, Mixed-Integer Linear Programming, Quadratic Programming, Nonlinear Programming, minimax, goal-attain, least squares''' and '''Minimization/maximization''' with or without '''constraints''' problems.  &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
|There are several ways to '''install''' the '''toolbox. '''&lt;br /&gt;
&lt;br /&gt;
I will demonstrate one of the ways.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|'''Scilab console'''&amp;gt;&amp;gt; type '''atomsGui''' &amp;gt;&amp;gt; press '''Enter'''&lt;br /&gt;
|Open '''Scilab'''.&lt;br /&gt;
&lt;br /&gt;
In the '''Scilab console,''' type '''atomsGui''' and press '''Enter.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|'''Module Manager- ATOMS''' window&lt;br /&gt;
&lt;br /&gt;
Point to '''Categories''' list on the left.&lt;br /&gt;
|This will open the '''Module Manager- ATOMS''' window.&lt;br /&gt;
&lt;br /&gt;
You will see a '''Categories''' list on the left side.&lt;br /&gt;
|-&lt;br /&gt;
|Click once on the '''Optimization''' category&lt;br /&gt;
|Click once on the '''Optimization category'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|Point to the '''toolboxes'''&lt;br /&gt;
|This will show the '''toolboxes''' available in the '''Optimization category'''.&lt;br /&gt;
|-&lt;br /&gt;
|Click once on the '''FOSSEE Optimization Toolbox'''&lt;br /&gt;
|Click once on the '''FOSSEE Optimization Toolbox.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|Point to the '''toolbox''' on the right&lt;br /&gt;
&lt;br /&gt;
Scroll up&lt;br /&gt;
|This will show the details of this '''toolbox''' on the right side of the window.&lt;br /&gt;
&lt;br /&gt;
Scroll up until you see the '''Changelog statement'''.&lt;br /&gt;
|-&lt;br /&gt;
|Point to the version no.&lt;br /&gt;
|Make sure that the topmost version shown under '''Changelog,''' is the latest version.&lt;br /&gt;
&lt;br /&gt;
At the time of recording, the latest version of '''FOT''' for me is version '''0.4'''&lt;br /&gt;
|-&lt;br /&gt;
|Open a web browser  &amp;gt;&amp;gt; type the url&lt;br /&gt;
&lt;br /&gt;
[https://atoms.scilab.org/ ''https://atoms.scilab.org/'']&lt;br /&gt;
&lt;br /&gt;
&amp;gt;&amp;gt; press '''Enter'''&lt;br /&gt;
|Now how does one confirm which version of '''FOT''' is the latest?&lt;br /&gt;
&lt;br /&gt;
To find out, open a '''web browser''' and type the url '''https://atoms.scilab.org/'''&lt;br /&gt;
&lt;br /&gt;
And press '''Enter.'''&lt;br /&gt;
|-&lt;br /&gt;
|'''atoms web page.'''&lt;br /&gt;
|This will open the '''atoms web page.'''&lt;br /&gt;
|-&lt;br /&gt;
| In the '''search bar  &amp;gt;&amp;gt;''' type '''fot'''  &amp;gt;&amp;gt; press '''Enter'''&lt;br /&gt;
|&lt;br /&gt;
In the '''search bar''' type, '''fot''' and press '''Enter.'''&lt;br /&gt;
|-&lt;br /&gt;
|Point to '''FOSSEE Optimization Toolbox''' in the search result &amp;gt;&amp;gt; click on it&lt;br /&gt;
|You can see '''FOSSEE Optimization Toolbox''' in the search result. Click on it.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|Highlight the version no. &lt;br /&gt;
|Notice that the version shown is '''0.4''' which is the latest version.&lt;br /&gt;
|-&lt;br /&gt;
|Switch to the '''Module Manager- ATOMS''' window.&lt;br /&gt;
|Now switch to the '''Module Manager- ATOMS''' window.&lt;br /&gt;
|-&lt;br /&gt;
|Click on the '''File''' menu  &amp;gt;&amp;gt; click on '''Update List of Packages'''&lt;br /&gt;
|Do the following if you see an older version of '''FOT''' as the topmost version under '''Changelog.'''&lt;br /&gt;
&lt;br /&gt;
On the top left corner of the window, click on '''File menu'''.&lt;br /&gt;
&lt;br /&gt;
Then click on '''Update List of Packages'''.&lt;br /&gt;
|-&lt;br /&gt;
|Pop up window appears showing a '''progress bar'''.&lt;br /&gt;
&lt;br /&gt;
|This will open a pop up window showing a '''progress bar'''.&lt;br /&gt;
&lt;br /&gt;
It is updating the list of '''packages'''.&lt;br /&gt;
|-&lt;br /&gt;
|Pop up window closes automatically &amp;gt;&amp;gt; '''Scilab console''' says &amp;quot;Finished&amp;quot;&lt;br /&gt;
|After the popup window closes automatically, check the '''Scilab console'''.&lt;br /&gt;
&lt;br /&gt;
If the update fails and you see any error messages, restart '''Scilab''' and repeat the steps.&lt;br /&gt;
&lt;br /&gt;
For me, it says it has finished '''scan'''ning the '''repository'''.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|If the '''toolbox''' version shown in the '''Module Manager- ATOMS''' window is the latest one, we can '''install''' it.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|Click on the '''Install''' button&lt;br /&gt;
|At the bottom of the window, click on the '''Install''' button.&lt;br /&gt;
&lt;br /&gt;
If the '''installation''' is successful, '''Installation Done''' message appears at the bottom.&lt;br /&gt;
&lt;br /&gt;
After this, it is required to '''restart Scilab'''.&lt;br /&gt;
&lt;br /&gt;
Upon '''restart''', the '''FOT toolbox''' will get loaded automatically.&lt;br /&gt;
|-&lt;br /&gt;
| Restart '''Scilab'''&lt;br /&gt;
&lt;br /&gt;
'''FOT toolbox''' will get loaded automatically&lt;br /&gt;
|I have '''restart'''ed '''Scilab'''.&lt;br /&gt;
&lt;br /&gt;
Notice that the '''FOT toolbox''' gets loaded on startup.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|Let us now run a few examples to confirm if the '''installation''' was successful.&lt;br /&gt;
|-&lt;br /&gt;
| Type '''help''' in '''Scilab console'''  &amp;gt;&amp;gt; press '''Enter.'''&lt;br /&gt;
|&lt;br /&gt;
Type '''help''' in the '''Scilab console''' and press '''Enter.'''&lt;br /&gt;
|-&lt;br /&gt;
|'''Help''' window opens  &amp;gt;&amp;gt; on the left scroll to bottom of TOC&lt;br /&gt;
|This will open the '''Help''' window.&lt;br /&gt;
&lt;br /&gt;
Scroll to the bottom of '''Table Of Contents''' on the left hand side.&lt;br /&gt;
|-&lt;br /&gt;
| Click on '''FOSSEE_Optimization_Toolbox'''&lt;br /&gt;
|Click on '''FOSSEE_Optimization_Toolbox '''&lt;br /&gt;
|-&lt;br /&gt;
|Point to '''help''' contents on this '''toolbox''' on the right&lt;br /&gt;
|This will open the '''Help''' contents on this '''toolbox''' on the right hand side.&lt;br /&gt;
|-&lt;br /&gt;
| Click on the '''fot_fmincon''' function.&lt;br /&gt;
|Click on the '''fot_fmincon function'''.&lt;br /&gt;
&lt;br /&gt;
This '''function''' is used to solve a general '''nonlinear optimization''' problem.&lt;br /&gt;
|-&lt;br /&gt;
|Scroll down&lt;br /&gt;
&lt;br /&gt;
Point to the first example.&lt;br /&gt;
Click on the '''Execute''' button&lt;br /&gt;
|Scroll down until you reach the '''Examples''' section.&lt;br /&gt;
&lt;br /&gt;
Let us execute the first example.&lt;br /&gt;
&lt;br /&gt;
Scroll to the right until you see the '''Execute''' button on the first example.&lt;br /&gt;
&lt;br /&gt;
Click on the '''Execute''' button.&lt;br /&gt;
|-&lt;br /&gt;
| Switch to the '''Scilab''' console.&lt;br /&gt;
|Switch to the '''Scilab console'''.&lt;br /&gt;
&lt;br /&gt;
You can see that the example got '''executed''' successfully.&lt;br /&gt;
&lt;br /&gt;
Some of the values displayed on my '''console''' may differ from what you get.&lt;br /&gt;
&lt;br /&gt;
You can safely ignore this.&lt;br /&gt;
&lt;br /&gt;
Now let us '''execute''' one more example.&lt;br /&gt;
|-&lt;br /&gt;
|Switch to the '''Help''' window&lt;br /&gt;
&lt;br /&gt;
Click on '''fot_linprog'''&lt;br /&gt;
|Switch to the '''Help''' window.&lt;br /&gt;
&lt;br /&gt;
On the left hand side, scroll down and click on '''fot_linprog'''&lt;br /&gt;
|-&lt;br /&gt;
|Scroll down&lt;br /&gt;
&lt;br /&gt;
Click on the '''Execute''' button&lt;br /&gt;
|On the right hand side, scroll down until you reach the '''Examples''' section.&lt;br /&gt;
&lt;br /&gt;
Let us '''execute''' the first example.&lt;br /&gt;
&lt;br /&gt;
Scroll to the right if needed, until you see the '''Execute''' button on the first example.&lt;br /&gt;
&lt;br /&gt;
Click on the '''Execute''' button.&lt;br /&gt;
|-&lt;br /&gt;
|Switch to the '''Scilab''' console.&lt;br /&gt;
|Switch to the '''Scilab console'''.&lt;br /&gt;
&lt;br /&gt;
You can see that the example got '''executed''' successfully.&lt;br /&gt;
&lt;br /&gt;
Some of the values displayed on my '''console''' may differ from what you get.&lt;br /&gt;
&lt;br /&gt;
You can safely ignore this.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Summary'''&lt;br /&gt;
|This brings us to the end of this tutorial.&lt;br /&gt;
&lt;br /&gt;
Let us summarise.&lt;br /&gt;
&lt;br /&gt;
In this tutorial, we have learnt to:&lt;br /&gt;
 &lt;br /&gt;
*'''Install''' the '''FOSSEE Optimization Toolbox'''. &lt;br /&gt;
*'''Execute''' examples from the '''Help menu''' in the '''toolbox'''.  &lt;br /&gt;
|-&lt;br /&gt;
|Show Slide: '''About Spoken Tutorial project'''&lt;br /&gt;
|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;
|Show Slide: '''Spoken Tutorial Workshops'''&lt;br /&gt;
|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;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Answers for THIS Spoken Tutorial'''&lt;br /&gt;
|Do you have questions in THIS Spoken Tutorial?&lt;br /&gt;
&lt;br /&gt;
Please visit this site.&lt;br /&gt;
&lt;br /&gt;
Choose the minute and second where you have the question.&lt;br /&gt;
&lt;br /&gt;
Explain your question briefly.&lt;br /&gt;
&lt;br /&gt;
The Spoken Tutorial project will ensure an answer.&lt;br /&gt;
&lt;br /&gt;
You will have to register to ask questions.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Forum for specific questions:'''&lt;br /&gt;
|The Spoken Tutorial forum is for specific questions on this tutorial.&lt;br /&gt;
&lt;br /&gt;
Please do not post unrelated and general questions on them.&lt;br /&gt;
&lt;br /&gt;
This will help reduce the clutter.&lt;br /&gt;
&lt;br /&gt;
With less clutter, we can use these discussions as instructional material.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide: '''FOSSEE Forum'''&lt;br /&gt;
|For any general or technical questions on '''Scilab''', visit the FOSSEE forum and post your question.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Textbook Companion project.'''&lt;br /&gt;
|The FOSSEE team coordinates the Textbook Companion project.&lt;br /&gt;
&lt;br /&gt;
We give Certificates and Honorarium to the contributors.&lt;br /&gt;
&lt;br /&gt;
For more details, please visit this site.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide: '''Lab Migration'''&lt;br /&gt;
|The FOSSEE team coordinates the Lab Migration project.&lt;br /&gt;
&lt;br /&gt;
For more details, please visit this site.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide: '''Acknowledgement'''&lt;br /&gt;
|Spoken Tutorial and FOSSEE projects are funded by MoE, Government of India.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide: Thank You&lt;br /&gt;
|The script has been created by FOSSEE Team, IIT Bombay.&lt;br /&gt;
&lt;br /&gt;
And the video for this tutorial was created by '''Anandajith T S,''' FOSSEE intern 2021.&lt;br /&gt;
&lt;br /&gt;
Thanks for joining.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Priyanka.guntaka123</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/Scilab---FOSSEE-Optimisation-Toolbox/C2/Installation-of-FOSSEE-Optimization-Toolbox/English</id>
		<title>Scilab---FOSSEE-Optimisation-Toolbox/C2/Installation-of-FOSSEE-Optimization-Toolbox/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/Scilab---FOSSEE-Optimisation-Toolbox/C2/Installation-of-FOSSEE-Optimization-Toolbox/English"/>
				<updated>2022-02-07T16:31:42Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Title of script''': Installation of '''FOSSEE Optimization Toolbox'''&lt;br /&gt;
&lt;br /&gt;
'''Author: Harpreet Singh, Georgey John, Rupak Rokade and Anandajith T S'''&lt;br /&gt;
&lt;br /&gt;
'''Keywords:Scilab, FOSSEE Optimization Toolbox, Installation, FOT, Optimization Theory'''&lt;br /&gt;
{|border=1&lt;br /&gt;
! '''Visual Cue'''&lt;br /&gt;
! '''Narration'''&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Title Slide'''&lt;br /&gt;
| Hello and welcome to the Spoken Tutorial on “'''Installation of FOSSEE Optimization Toolbox in Scilab'''”.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Learning Objectives'''&lt;br /&gt;
|In this tutorial, we will learn how to:&lt;br /&gt;
&lt;br /&gt;
*'''Install''' the '''FOSSEE Optimization''' '''Toolbox'''. &lt;br /&gt;
*'''Execute''' a few '''examples''' using the '''toolbox'''.  &lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''System Requirements'''&lt;br /&gt;
|To record this tutorial, I am using&lt;br /&gt;
&lt;br /&gt;
*'''Ubuntu 18.04''' as the operating system and &lt;br /&gt;
*'''Scilab 6.1.0'''  &lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Installation Requirements'''&lt;br /&gt;
|For the '''installation'''-&lt;br /&gt;
*We require a working '''Internet connection'''.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Pre-requisite'''&lt;br /&gt;
|Before practising this tutorial, a learner should have :&lt;br /&gt;
*Basic knowledge of '''Scilab''' and '''Optimization Theory'''.&lt;br /&gt;
&lt;br /&gt;
For '''Scilab''', please refer to the '''Scilab''' tutorials available on the '''Spoken Tutorial''' website.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''What is FOSSEE Optimization Toolbox?'''&lt;br /&gt;
| '''What is FOSSEE Optimization Toolbox?'''&lt;br /&gt;
*'''FOT''' is a '''toolbox''' in '''Scilab.''' &lt;br /&gt;
*It solves '''optimization''' problems using '''functions''' like '''linprog, fmincon''' and many others. &lt;br /&gt;
*It can solve '''Linear Programming, Mixed-Integer Linear Programming, Quadratic Programming, Nonlinear Programming, minimax, goal-attain, least squares''' and '''Minimization/maximization''' with or without '''constraints''' problems.  &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
|There are several ways to '''install''' the '''toolbox. '''&lt;br /&gt;
&lt;br /&gt;
I will demonstrate one of the ways.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|'''Scilab console'''&amp;gt;&amp;gt; type '''atomsGui''' &amp;gt;&amp;gt; press '''Enter'''&lt;br /&gt;
|Open '''Scilab'''.&lt;br /&gt;
&lt;br /&gt;
In the '''Scilab console,''' type '''atomsGui''' and press '''Enter.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|'''Module Manager- ATOMS''' window&lt;br /&gt;
&lt;br /&gt;
Point to '''Categories''' list on the left.&lt;br /&gt;
|This will open the '''Module Manager- ATOMS''' window.&lt;br /&gt;
&lt;br /&gt;
You will see a '''Categories''' list on the left side.&lt;br /&gt;
|-&lt;br /&gt;
|Click once on the '''Optimization''' category&lt;br /&gt;
|Click once on the '''Optimization category'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|Point to the '''toolboxes'''&lt;br /&gt;
|This will show the '''toolboxes''' available in the '''Optimization category'''.&lt;br /&gt;
|-&lt;br /&gt;
|Click once on the '''FOSSEE Optimization Toolbox'''&lt;br /&gt;
|Click once on the '''FOSSEE Optimization Toolbox.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|Point to the '''toolbox''' on the right&lt;br /&gt;
&lt;br /&gt;
Scroll up&lt;br /&gt;
|This will show the details of this '''toolbox''' on the right side of the window.&lt;br /&gt;
&lt;br /&gt;
Scroll up until you see the '''Changelog statement'''.&lt;br /&gt;
|-&lt;br /&gt;
|Point to the version no.&lt;br /&gt;
|Make sure that the topmost version shown under '''Changelog,''' is the latest version.&lt;br /&gt;
&lt;br /&gt;
At the time of recording, the latest version of '''FOT''' for me is version '''0.4'''&lt;br /&gt;
|-&lt;br /&gt;
|Open a web browser  &amp;gt;&amp;gt; type the url&lt;br /&gt;
&lt;br /&gt;
[https://atoms.scilab.org/ ''https://atoms.scilab.org/'']&lt;br /&gt;
&lt;br /&gt;
&amp;gt;&amp;gt; press '''Enter'''&lt;br /&gt;
|Now how does one confirm which version of '''FOT''' is the latest?&lt;br /&gt;
&lt;br /&gt;
To find out, open a '''web browser''' and type the url '''https://atoms.scilab.org/'''&lt;br /&gt;
&lt;br /&gt;
And press '''Enter.'''&lt;br /&gt;
|-&lt;br /&gt;
|'''atoms web page.'''&lt;br /&gt;
|This will open the '''atoms web page.'''&lt;br /&gt;
|-&lt;br /&gt;
| In the '''search bar  &amp;gt;&amp;gt;''' type '''fot'''  &amp;gt;&amp;gt; press '''Enter'''&lt;br /&gt;
|&lt;br /&gt;
In the '''search bar''' type, '''fot''' and press '''Enter.'''&lt;br /&gt;
|-&lt;br /&gt;
|Point to '''FOSSEE Optimization Toolbox''' in the search result &amp;gt;&amp;gt; click on it&lt;br /&gt;
|You can see '''FOSSEE Optimization Toolbox''' in the search result. Click on it.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|Highlight the version no. &lt;br /&gt;
|Notice that the version shown is '''0.4''' which is the latest version.&lt;br /&gt;
|-&lt;br /&gt;
|Switch to the '''Module Manager- ATOMS''' window.&lt;br /&gt;
|Now switch to the '''Module Manager- ATOMS''' window.&lt;br /&gt;
|-&lt;br /&gt;
|Click on the '''File''' menu  &amp;gt;&amp;gt; click on '''Update List of Packages'''&lt;br /&gt;
|Do the following if you see an older version of '''FOT''' as the topmost version under '''Changelog.'''&lt;br /&gt;
&lt;br /&gt;
On the top left corner of the window, click on '''File menu'''.&lt;br /&gt;
&lt;br /&gt;
Then click on '''Update List of Packages'''.&lt;br /&gt;
|-&lt;br /&gt;
|Pop up window appears showing a '''progress bar'''.&lt;br /&gt;
&lt;br /&gt;
|This will open a pop up window showing a '''progress bar'''.&lt;br /&gt;
&lt;br /&gt;
It is updating the list of '''packages'''.&lt;br /&gt;
|-&lt;br /&gt;
|Pop up window closes automatically &amp;gt;&amp;gt; '''Scilab console''' says &amp;quot;Finished&amp;quot;&lt;br /&gt;
|After the popup window closes automatically, check the '''Scilab console'''.&lt;br /&gt;
&lt;br /&gt;
If the update fails and you see any error messages, restart '''Scilab''' and repeat the steps.&lt;br /&gt;
&lt;br /&gt;
For me, it says it has finished '''scan'''ning the '''repository'''.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|If the '''toolbox''' version shown in the '''Module Manager- ATOMS''' window is the latest one, we can '''install''' it.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|Click on the '''Install''' button&lt;br /&gt;
|At the bottom of the window, click on the '''Install''' button.&lt;br /&gt;
&lt;br /&gt;
If the '''installation''' is successful, '''Installation Done''' message appears at the bottom.&lt;br /&gt;
&lt;br /&gt;
After this, it is required to '''restart Scilab'''.&lt;br /&gt;
&lt;br /&gt;
Upon '''restart''', the '''FOT toolbox''' will get loaded automatically.&lt;br /&gt;
|-&lt;br /&gt;
| Restart '''Scilab'''&lt;br /&gt;
&lt;br /&gt;
'''FOT toolbox''' will get loaded automatically&lt;br /&gt;
|I have '''restart'''ed '''Scilab'''.&lt;br /&gt;
&lt;br /&gt;
Notice that the '''FOT toolbox''' gets loaded on startup.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|Let us now run a few examples to confirm if the '''installation''' was successful.&lt;br /&gt;
|-&lt;br /&gt;
| Type '''help''' in '''Scilab console'''  &amp;gt;&amp;gt; press '''Enter.'''&lt;br /&gt;
|&lt;br /&gt;
Type '''help''' in the '''Scilab console''' and press '''Enter.'''&lt;br /&gt;
|-&lt;br /&gt;
|'''Help''' window opens  &amp;gt;&amp;gt; on the left scroll to bottom of TOC&lt;br /&gt;
|This will open the '''Help''' window.&lt;br /&gt;
&lt;br /&gt;
Scroll to the bottom of '''Table Of Contents''' on the left hand side.&lt;br /&gt;
|-&lt;br /&gt;
| Click on '''FOSSEE_Optimization_Toolbox'''&lt;br /&gt;
|Click on '''FOSSEE_Optimization_Toolbox '''&lt;br /&gt;
|-&lt;br /&gt;
|Point to '''help''' contents on this '''toolbox''' on the right&lt;br /&gt;
|This will open the '''Help''' contents on this '''toolbox''' on the right hand side.&lt;br /&gt;
|-&lt;br /&gt;
| Click on the '''fot_fmincon''' function.&lt;br /&gt;
|Click on the '''fot_fmincon function'''.&lt;br /&gt;
&lt;br /&gt;
This '''function''' is used to solve a general '''nonlinear optimization''' problem.&lt;br /&gt;
|-&lt;br /&gt;
|Scroll down&lt;br /&gt;
&lt;br /&gt;
Point to the first example.&lt;br /&gt;
Click on the '''Execute''' button&lt;br /&gt;
|Scroll down until you reach the '''Examples''' section.&lt;br /&gt;
&lt;br /&gt;
Let us execute the first example.&lt;br /&gt;
&lt;br /&gt;
Scroll to the right until you see the '''Execute''' button on the first example.&lt;br /&gt;
&lt;br /&gt;
Click on the '''Execute''' button.&lt;br /&gt;
|-&lt;br /&gt;
| Switch to the '''Scilab''' console.&lt;br /&gt;
|Switch to the '''Scilab console'''.&lt;br /&gt;
&lt;br /&gt;
You can see that the example got '''executed''' successfully.&lt;br /&gt;
&lt;br /&gt;
Some of the values displayed on my '''console''' may differ from what you get.&lt;br /&gt;
&lt;br /&gt;
You can safely ignore this.&lt;br /&gt;
&lt;br /&gt;
Now let us '''execute''' one more example.&lt;br /&gt;
|-&lt;br /&gt;
|Switch to the '''Help''' window&lt;br /&gt;
&lt;br /&gt;
Click on '''fot_linprog'''&lt;br /&gt;
|Switch to the '''Help''' window.&lt;br /&gt;
&lt;br /&gt;
On the left hand side, scroll down and click on '''fot_linprog'''&lt;br /&gt;
|-&lt;br /&gt;
|Scroll down&lt;br /&gt;
&lt;br /&gt;
Click on the '''Execute''' button&lt;br /&gt;
|On the right hand side, scroll down until you reach the '''Examples''' section.&lt;br /&gt;
&lt;br /&gt;
Let us '''execute''' the first example.&lt;br /&gt;
&lt;br /&gt;
Scroll to the right if needed, until you see the '''Execute''' button on the first example.&lt;br /&gt;
&lt;br /&gt;
Click on the '''Execute''' button.&lt;br /&gt;
|-&lt;br /&gt;
|Switch to the '''Scilab''' console.&lt;br /&gt;
|Switch to the '''Scilab console'''.&lt;br /&gt;
&lt;br /&gt;
You can see that the example got '''executed''' successfully.&lt;br /&gt;
&lt;br /&gt;
Some of the values displayed on my '''console''' may differ from what you get.&lt;br /&gt;
&lt;br /&gt;
You can safely ignore this.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Summary'''&lt;br /&gt;
|This brings us to the end of this tutorial.&lt;br /&gt;
&lt;br /&gt;
Let us summarise.&lt;br /&gt;
&lt;br /&gt;
In this tutorial, we have learnt to:&lt;br /&gt;
 &lt;br /&gt;
*'''Install''' the '''FOSSEE Optimization Toolbox'''. &lt;br /&gt;
*'''Execute''' examples from the '''Help menu''' in the '''toolbox'''.  &lt;br /&gt;
|-&lt;br /&gt;
|Show Slide: '''About Spoken Tutorial project'''&lt;br /&gt;
|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;
|Show Slide: '''Spoken Tutorial Workshops'''&lt;br /&gt;
|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;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Answers for THIS Spoken Tutorial'''&lt;br /&gt;
|Do you have questions in THIS Spoken Tutorial?&lt;br /&gt;
&lt;br /&gt;
Please visit this site.&lt;br /&gt;
&lt;br /&gt;
Choose the minute and second where you have the question&lt;br /&gt;
&lt;br /&gt;
Explain your question briefly&lt;br /&gt;
&lt;br /&gt;
The Spoken Tutorial project will ensure an answer&lt;br /&gt;
&lt;br /&gt;
You will have to register to ask questions&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Forum for specific questions:'''&lt;br /&gt;
|The Spoken Tutorial forum is for specific questions on this tutorial.&lt;br /&gt;
&lt;br /&gt;
Please do not post unrelated and general questions on them.&lt;br /&gt;
&lt;br /&gt;
This will help reduce the clutter.&lt;br /&gt;
&lt;br /&gt;
With less clutter, we can use these discussions as instructional material.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide: '''FOSSEE Forum'''&lt;br /&gt;
|For any general or technical questions on '''Scilab''', visit the FOSSEE forum and post your question.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Textbook Companion project.'''&lt;br /&gt;
|The FOSSEE team coordinates the Textbook Companion project.&lt;br /&gt;
&lt;br /&gt;
We give Certificates and Honorarium to the contributors.&lt;br /&gt;
&lt;br /&gt;
For more details, please visit this site.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide: '''Lab Migration'''&lt;br /&gt;
|The FOSSEE team coordinates the Lab Migration project.&lt;br /&gt;
&lt;br /&gt;
For more details, please visit this site.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide: '''Acknowledgement'''&lt;br /&gt;
|Spoken Tutorial and FOSSEE projects are funded by MoE, Government of India.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide: Thank You&lt;br /&gt;
|The script has been created by FOSSEE Team, IIT Bombay.&lt;br /&gt;
&lt;br /&gt;
And the video for this tutorial was created by '''Anandajith T S,''' FOSSEE intern 2021.&lt;br /&gt;
&lt;br /&gt;
Thanks for joining.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Priyanka.guntaka123</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/Scilab---FOSSEE-Optimisation-Toolbox/C2/Installation-of-FOSSEE-Optimization-Toolbox/English</id>
		<title>Scilab---FOSSEE-Optimisation-Toolbox/C2/Installation-of-FOSSEE-Optimization-Toolbox/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/Scilab---FOSSEE-Optimisation-Toolbox/C2/Installation-of-FOSSEE-Optimization-Toolbox/English"/>
				<updated>2022-02-07T16:24:38Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Title of script''': Installation of '''FOSSEE Optimization Toolbox'''&lt;br /&gt;
&lt;br /&gt;
'''Author: Harpreet Singh, Georgey John, Rupak Rokade and Anandajith T S'''&lt;br /&gt;
&lt;br /&gt;
'''Keywords:Scilab, FOSSEE Optimization Toolbox, Installation, FOT, Optimization Theory'''&lt;br /&gt;
{|border=1&lt;br /&gt;
! '''Visual Cue'''&lt;br /&gt;
! '''Narration'''&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Title Slide'''&lt;br /&gt;
| Hello and welcome to the Spoken Tutorial on “'''Installation of FOSSEE Optimization Toolbox in Scilab'''”.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Learning Objectives'''&lt;br /&gt;
|In this tutorial, we will learn how to:&lt;br /&gt;
&lt;br /&gt;
*'''Install''' the '''FOSSEE Optimization''' '''Toolbox'''. &lt;br /&gt;
*'''Execute''' a few '''examples''' using the '''toolbox'''.  &lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''System Requirements'''&lt;br /&gt;
|To record this tutorial, I am using&lt;br /&gt;
&lt;br /&gt;
*'''Ubuntu 18.04''' as the operating system and &lt;br /&gt;
*'''Scilab 6.1.0'''  &lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Installation Requirements'''&lt;br /&gt;
|For the '''installation'''-&lt;br /&gt;
*We require a working '''Internet connection'''.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Pre-requisite'''&lt;br /&gt;
|Before practising this tutorial, a learner should have :&lt;br /&gt;
*Basic knowledge of '''Scilab''' and '''Optimization Theory'''.&lt;br /&gt;
&lt;br /&gt;
For '''Scilab''', please refer to the '''Scilab''' tutorials available on the '''Spoken Tutorial''' website.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''What is FOSSEE Optimization Toolbox?'''&lt;br /&gt;
| '''What is FOSSEE Optimization Toolbox?'''&lt;br /&gt;
*'''FOT''' is a '''toolbox''' in '''Scilab.''' &lt;br /&gt;
*It solves '''optimization''' problems using '''functions''' like '''linprog, fmincon''' and many others. &lt;br /&gt;
*It can solve '''Linear Programming, Mixed-Integer Linear Programming, Quadratic Programming, Nonlinear Programming, minimax, goal-attain, least squares''' and '''Minimization/maximization''' with or without '''constraints''' problems.  &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
|There are several ways to '''install''' the '''toolbox. '''&lt;br /&gt;
&lt;br /&gt;
I will demonstrate one of the ways.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|'''Scilab console'''&amp;gt;&amp;gt; type '''atomsGui''' &amp;gt;&amp;gt; press '''Enter'''&lt;br /&gt;
|Open '''Scilab'''.&lt;br /&gt;
&lt;br /&gt;
In the '''Scilab console,''' type '''atomsGui''' and press '''Enter.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|'''Module Manager- ATOMS''' window&lt;br /&gt;
&lt;br /&gt;
Point to '''Categories''' list on the left.&lt;br /&gt;
|This will open the '''Module Manager- ATOMS''' window.&lt;br /&gt;
&lt;br /&gt;
You will see a '''Categories''' list on the left side.&lt;br /&gt;
|-&lt;br /&gt;
|Click once on the '''Optimization''' category&lt;br /&gt;
|Click once on the '''Optimization category'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|Point to the '''toolboxes'''&lt;br /&gt;
|This will show the '''toolboxes''' available in the '''Optimization category'''.&lt;br /&gt;
|-&lt;br /&gt;
|Click once on the '''FOSSEE Optimization Toolbox'''&lt;br /&gt;
|Click once on the '''FOSSEE Optimization Toolbox.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|Point to the '''toolbox''' on the right&lt;br /&gt;
&lt;br /&gt;
Scroll up&lt;br /&gt;
|This will show the details of this '''toolbox''' on the right side of the window.&lt;br /&gt;
&lt;br /&gt;
Scroll up until you see the '''Changelog statement'''.&lt;br /&gt;
|-&lt;br /&gt;
|Point to the version no.&lt;br /&gt;
|Make sure that the topmost version shown under '''Changelog,''' is the latest version.&lt;br /&gt;
&lt;br /&gt;
At the time of recording, the latest version of '''FOT''' for me is version '''0.4'''&lt;br /&gt;
|-&lt;br /&gt;
|Open a web browser  &amp;gt;&amp;gt; type the url&lt;br /&gt;
&lt;br /&gt;
[https://atoms.scilab.org/ ''https://atoms.scilab.org/'']&lt;br /&gt;
&lt;br /&gt;
&amp;gt;&amp;gt; press '''Enter'''&lt;br /&gt;
|Now how does one confirm which version of '''FOT''' is the latest?&lt;br /&gt;
&lt;br /&gt;
To find out, open a '''web browser''' and type the url '''https://atoms.scilab.org/'''&lt;br /&gt;
&lt;br /&gt;
And press '''Enter.'''&lt;br /&gt;
|-&lt;br /&gt;
|'''atoms web page.'''&lt;br /&gt;
|This will open the '''atoms web page.'''&lt;br /&gt;
|-&lt;br /&gt;
| In the '''search bar  &amp;gt;&amp;gt;''' type '''fot'''  &amp;gt;&amp;gt; press '''Enter'''&lt;br /&gt;
|&lt;br /&gt;
In the '''search bar''' type, '''fot''' and press '''Enter.'''&lt;br /&gt;
|-&lt;br /&gt;
|Point to '''FOSSEE Optimization Toolbox''' in the search result &amp;gt;&amp;gt; click on it&lt;br /&gt;
|You can see '''FOSSEE Optimization Toolbox''' in the search result. Click on it.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|Highlight the version no. &lt;br /&gt;
|Notice that the version shown is '''0.4''' which is the latest version.&lt;br /&gt;
|-&lt;br /&gt;
|Switch to the '''Module Manager- ATOMS''' window.&lt;br /&gt;
|Now switch to the '''Module Manager- ATOMS''' window.&lt;br /&gt;
|-&lt;br /&gt;
|Click on the '''File''' menu  &amp;gt;&amp;gt; click on '''Update List of Packages'''&lt;br /&gt;
|Do the following if you see an older version of '''FOT''' as the topmost version under '''Changelog.'''&lt;br /&gt;
&lt;br /&gt;
On the top left corner of the window, click on '''File menu'''.&lt;br /&gt;
&lt;br /&gt;
Then click on '''Update List of Packages'''.&lt;br /&gt;
|-&lt;br /&gt;
|Pop up window appears showing a '''progress bar'''.&lt;br /&gt;
&lt;br /&gt;
|This will open a pop up window showing a '''progress bar'''.&lt;br /&gt;
&lt;br /&gt;
It is updating the list of '''packages'''.&lt;br /&gt;
|-&lt;br /&gt;
|Pop up window closes automatically &amp;gt;&amp;gt; '''Scilab console''' says &amp;quot;Finished&amp;quot;&lt;br /&gt;
|After the popup closes automatically, check the '''Scilab console'''.&lt;br /&gt;
&lt;br /&gt;
If the update fails and you see any error messages, restart '''Scilab''' and repeat the steps.&lt;br /&gt;
&lt;br /&gt;
For me, it says it has finished '''scan'''ning the '''repository'''.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|If the '''toolbox''' version shown in the '''Module Manager- ATOMS''' window is the latest one, we can '''install''' it.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|Click on the '''Install''' button&lt;br /&gt;
|At the bottom of the window, click on the '''Install''' button.&lt;br /&gt;
&lt;br /&gt;
If the '''installation''' is successful, '''Installation Done''' message appears at the bottom.&lt;br /&gt;
&lt;br /&gt;
After this, it is required to '''restart Scilab'''.&lt;br /&gt;
&lt;br /&gt;
Upon '''restart''', the '''FOT toolbox''' will get loaded automatically.&lt;br /&gt;
|-&lt;br /&gt;
| Restart '''Scilab'''&lt;br /&gt;
&lt;br /&gt;
'''FOT toolbox''' will get loaded automatically&lt;br /&gt;
|I have '''restart'''ed '''Scilab'''.&lt;br /&gt;
&lt;br /&gt;
Notice that the '''FOT toolbox''' gets loaded on startup.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|Let us now run a few examples to confirm if the '''installation''' was successful.&lt;br /&gt;
|-&lt;br /&gt;
| Type '''help''' in '''Scilab console'''  &amp;gt;&amp;gt; press '''Enter.'''&lt;br /&gt;
|&lt;br /&gt;
Type '''help''' in the '''Scilab console''' and press '''Enter.'''&lt;br /&gt;
|-&lt;br /&gt;
|'''Help''' window opens  &amp;gt;&amp;gt; on the left scroll to bottom of TOC&lt;br /&gt;
|This will open the '''Help''' window.&lt;br /&gt;
&lt;br /&gt;
Scroll to the bottom of '''Table Of Contents''' on the left hand side.&lt;br /&gt;
|-&lt;br /&gt;
| Click on '''FOSSEE_Optimization_Toolbox'''&lt;br /&gt;
|Click on '''FOSSEE_Optimization_Toolbox '''&lt;br /&gt;
|-&lt;br /&gt;
|Point to '''help''' contents on this '''toolbox''' on the right&lt;br /&gt;
|This will open the '''Help''' contents on this '''toolbox''' on the right hand side.&lt;br /&gt;
|-&lt;br /&gt;
| Click on the '''fot_fmincon''' function.&lt;br /&gt;
|Click on the '''fot_fmincon function'''.&lt;br /&gt;
&lt;br /&gt;
This '''function''' is used to solve a general '''nonlinear optimization''' problem.&lt;br /&gt;
|-&lt;br /&gt;
|Scroll down&lt;br /&gt;
&lt;br /&gt;
Point to the first example.&lt;br /&gt;
Click on the '''Execute''' button&lt;br /&gt;
|Scroll down until you reach the '''Examples''' section.&lt;br /&gt;
&lt;br /&gt;
Let us execute the first example.&lt;br /&gt;
&lt;br /&gt;
Scroll to the right until you see the '''Execute''' button on the first example.&lt;br /&gt;
&lt;br /&gt;
Click on the '''Execute''' button.&lt;br /&gt;
|-&lt;br /&gt;
| Switch to the '''Scilab''' console.&lt;br /&gt;
|Switch to the '''Scilab console'''.&lt;br /&gt;
&lt;br /&gt;
You can see that the example got '''executed''' successfully.&lt;br /&gt;
&lt;br /&gt;
Some of the values displayed on my '''console''' may differ from what you get.&lt;br /&gt;
&lt;br /&gt;
You can safely ignore this.&lt;br /&gt;
&lt;br /&gt;
Now let us '''execute''' one more example.&lt;br /&gt;
|-&lt;br /&gt;
|Switch to the '''Help''' window&lt;br /&gt;
&lt;br /&gt;
Click on '''fot_linprog'''&lt;br /&gt;
|Switch to the '''Help''' window.&lt;br /&gt;
&lt;br /&gt;
On the left hand side, scroll down and click on '''fot_linprog'''&lt;br /&gt;
|-&lt;br /&gt;
|Scroll down&lt;br /&gt;
&lt;br /&gt;
Click on the '''Execute''' button&lt;br /&gt;
|On the right hand side, scroll down until you reach the '''Examples''' section.&lt;br /&gt;
&lt;br /&gt;
Let us '''execute''' the first example.&lt;br /&gt;
&lt;br /&gt;
Scroll to the right if needed, until you see the '''Execute''' button on the first example.&lt;br /&gt;
&lt;br /&gt;
Click on the '''Execute''' button.&lt;br /&gt;
|-&lt;br /&gt;
|Switch to the '''Scilab''' console.&lt;br /&gt;
|Switch to the '''Scilab console'''.&lt;br /&gt;
&lt;br /&gt;
You can see that the example got '''executed''' successfully.&lt;br /&gt;
&lt;br /&gt;
Some of the values displayed on my '''console''' may differ from what you get.&lt;br /&gt;
&lt;br /&gt;
You can safely ignore this.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Summary'''&lt;br /&gt;
|This brings us to the end of this tutorial.&lt;br /&gt;
&lt;br /&gt;
Let us summarise.&lt;br /&gt;
&lt;br /&gt;
In this tutorial, we have learnt to:&lt;br /&gt;
 &lt;br /&gt;
*'''Install''' the '''FOSSEE Optimization Toolbox'''. &lt;br /&gt;
*'''Execute''' examples from the '''Help menu''' in the '''toolbox'''.  &lt;br /&gt;
|-&lt;br /&gt;
|Show Slide: '''About Spoken Tutorial project'''&lt;br /&gt;
|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;
|Show Slide: '''Spoken Tutorial Workshops'''&lt;br /&gt;
|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;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Answers for THIS Spoken Tutorial'''&lt;br /&gt;
|Do you have questions in THIS Spoken Tutorial?&lt;br /&gt;
&lt;br /&gt;
Please visit this site.&lt;br /&gt;
&lt;br /&gt;
Choose the minute and second where you have the question&lt;br /&gt;
&lt;br /&gt;
Explain your question briefly&lt;br /&gt;
&lt;br /&gt;
The Spoken Tutorial project will ensure an answer&lt;br /&gt;
&lt;br /&gt;
You will have to register to ask questions&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Forum for specific questions:'''&lt;br /&gt;
|The Spoken Tutorial forum is for specific questions on this tutorial.&lt;br /&gt;
&lt;br /&gt;
Please do not post unrelated and general questions on them.&lt;br /&gt;
&lt;br /&gt;
This will help reduce the clutter.&lt;br /&gt;
&lt;br /&gt;
With less clutter, we can use these discussions as instructional material.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide: '''FOSSEE Forum'''&lt;br /&gt;
|For any general or technical questions on '''Scilab''', visit the FOSSEE forum and post your question.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide:&lt;br /&gt;
&lt;br /&gt;
'''Textbook Companion project.'''&lt;br /&gt;
|The FOSSEE team coordinates the Textbook Companion project.&lt;br /&gt;
&lt;br /&gt;
We give Certificates and Honorarium to the contributors.&lt;br /&gt;
&lt;br /&gt;
For more details, please visit this site.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide: '''Lab Migration'''&lt;br /&gt;
|The FOSSEE team coordinates the Lab Migration project.&lt;br /&gt;
&lt;br /&gt;
For more details, please visit this site.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide: '''Acknowledgement'''&lt;br /&gt;
|Spoken Tutorial and FOSSEE projects are funded by MoE, Government of India.&lt;br /&gt;
|-&lt;br /&gt;
|Show Slide: Thank You&lt;br /&gt;
|The script has been created by FOSSEE Team, IIT Bombay.&lt;br /&gt;
&lt;br /&gt;
And the video for this tutorial was created by '''Anandajith T S,''' FOSSEE intern 2021.&lt;br /&gt;
&lt;br /&gt;
Thanks for joining.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Priyanka.guntaka123</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/Normal-Coil/English</id>
		<title>OpenPLC-with-LDmicro/C2/Normal-Coil/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/Normal-Coil/English"/>
				<updated>2021-06-30T04:48:25Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: &lt;/p&gt;
&lt;hr /&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: Welcome Slide&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Welcome to the spoken tutorial on '''Normal Coil.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 2: Learning Objectives&lt;br /&gt;
&lt;br /&gt;
* Normal Coil &lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will learn about the working of&lt;br /&gt;
&lt;br /&gt;
* '''Normal Coil '''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 3: System Requirements&lt;br /&gt;
&lt;br /&gt;
* '''Ubuntu Linux''' 18.04 OS&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''OpenPLC Mainboard'''&lt;br /&gt;
* 24V, 2A '''SMPS'''&lt;br /&gt;
* '''USBasp programmer'''&lt;br /&gt;
* '''Traffic Light module'''&lt;br /&gt;
* '''Switchboard module'''&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;
* '''OpenPLC Mainboard'''&lt;br /&gt;
* 24V, 2A '''SMPS'''&lt;br /&gt;
* '''USBasp programmer'''&lt;br /&gt;
* '''Traffic Light module''' and &lt;br /&gt;
* '''Switchboard module'''&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;
* Program OpenPLC Mainboard and&lt;br /&gt;
* Interface OpenPLC modules with Mainboard. &lt;br /&gt;
&lt;br /&gt;
If not, please refer to the relevant tutorials from [https://spoken-tutorial.org/ Home | spoken-tutorial.org]&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;|&lt;br /&gt;
* To follow this tutorial, you should know how to &lt;br /&gt;
** '''program OpenPLC Mainboard''' and&lt;br /&gt;
** '''interface OpenPLC modules''' with '''Mainboard'''. &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;| Slide 5: Prerequisites - Hardware setup&lt;br /&gt;
&lt;br /&gt;
hardware-prerequisite.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect''' SMPS''' and '''USBasp''' to the '''Mainboard''' as shown in the picture.&lt;br /&gt;
&lt;br /&gt;
Keep these connections throughout this tutorial.&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 ‘Instructions -&amp;gt; Insert Coil’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a '''Coil''' from '''Instructions''' 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;| We can observe that '''Coil''' is an '''output instruction'''.&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 coil&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on the '''Coil'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight ‘Type’ and ‘Source’&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| A dialog box opens.&lt;br /&gt;
&lt;br /&gt;
Here we can see two columns named '''‘Type’''' and '''‘Source’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to the types&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can see there are four types of '''coils'''.&lt;br /&gt;
&lt;br /&gt;
They are '''Normal, Negated, SET-Only''' and '''RESET-Only Coils'''.&lt;br /&gt;
&lt;br /&gt;
These coils have two '''source types''' which are''' Pin on MCU''' and '''Internal Relay'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to Normal, Pin on MCU&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| By default, the '''type''' of the '''coil''' is set to '''‘Normal’''' and '''source''' to '''‘Pin on MCU’'''.&lt;br /&gt;
&lt;br /&gt;
'''Pin on MCU''' means that the '''coil''' represents a '''pin''' on the '''microcontroller'''.&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;| Don’t change them. &lt;br /&gt;
&lt;br /&gt;
Keep the default settings as it is.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to other types&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will learn about other '''types''' of '''Coils''' and '''source types''' in the later tutorials.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the coil as LED &amp;gt;&amp;gt; Click the OK button.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the''' Coil''' as '''LED''' and click on the '''OK''' button.&lt;br /&gt;
&lt;br /&gt;
Remember that '''LDmicro''' is '''case sensitive'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the rung &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Note that the '''Coil''' is directly connected to the '''positive rail'''.&lt;br /&gt;
&lt;br /&gt;
So, the '''input''' to the '''Coil''' is '''logic 1'''.&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 will check the working of this '''logic'''.&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’ &amp;gt;&amp;gt; Click ‘Simulate -&amp;gt; Real-time simulation’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us turn on the '''simulation mode'''.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Simulation mode.'''&lt;br /&gt;
&lt;br /&gt;
Next, start real-time '''simulation''' as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight state of YLED in the I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Observe the '''state''' of '''YLED''' in the '''I/O list.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of LED in I/O list at the bottom of the screen&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe the '''state''' of '''YLED''' is 1.&lt;br /&gt;
&lt;br /&gt;
That is for a '''Normal Coil''' when the '''input''' is '''true''', the '''output''' is also '''true'''.&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' &amp;gt;&amp;gt; Click 'Simulate -&amp;gt; Simulation Mode'&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, turn off the '''simulation mode'''.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Halt Simulation.'''&lt;br /&gt;
&lt;br /&gt;
Then click '''Simulate''' and '''Simulation Mode'''&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''' the '''logic'''.&lt;br /&gt;
&lt;br /&gt;
The detailed steps on how to '''compile''' and save the '''logic''' are explained in the earlier tutorials. &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 on Microcontroller &amp;gt;&amp;gt; Select AVR ATmega16 40-PDIP &lt;br /&gt;
&lt;br /&gt;
Click on Settings &amp;gt;&amp;gt; Click on MCU parameters &amp;gt;&amp;gt; Change Crystal frequency to 16 &amp;gt;&amp;gt;Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on '''Settings''' and select the '''microcontroller AVR ATmega16 40-PDIP.''' &lt;br /&gt;
&lt;br /&gt;
Adjust its '''parameters''' as shown here.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on YLED in I/O list &amp;gt;&amp;gt; Select PA0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on the '''YLED''' in the '''I/O list'''.&lt;br /&gt;
&lt;br /&gt;
Then, assign '''pin PA0''' to the '''coil ‘YLED’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on Compile &amp;gt;&amp;gt; Click on Compile &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘normalcoil.hex’ &amp;gt;&amp;gt; Click on Save.&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''Compile''' the '''logic''' and save the '''hex file''' as ‘'''normalcoil.hex'''’.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘normalcoil.ld’ &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then save the '''ladder diagram''' as ‘'''normalcoil.ld'''’.&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 will see the working of this '''logic''' on '''hardware'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect Mainboard to PC using USBasp&lt;br /&gt;
&lt;br /&gt;
laptop-usbasp.jpg&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect the '''Mainboard''' to your laptop using '''USBasp'''.&lt;br /&gt;
&lt;br /&gt;
Turn on the '''power supply'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open terminal &amp;gt;&amp;gt; Type cd Desktop/LDmicro &amp;gt;&amp;gt; Press ENTER &amp;gt;&amp;gt; Type '''avrdude -c usbasp -p m16 -U flash:w:normalcoil.hex '''&amp;gt;&amp;gt; Press ENTER&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open the '''Terminal''' by pressing '''CTRL+ALT+T''' keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
Go to the folder where you saved the '''hex file'''.&lt;br /&gt;
&lt;br /&gt;
Type the '''command''' as shown to upload this '''hex file''' to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Turn off the '''power supply'''.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp connection''' from the laptop.&lt;br /&gt;
&lt;br /&gt;
This will prevent any '''hardware''' damage.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| normalcoil.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us see the '''connection''' details now. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| normalcoil.png&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect '''GND pin''' of the red '''LED''' of '''Traffic Light module''' to '''GND pin''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Then connect the +5V '''pin''' of the red '''LED''' to '''PA0 pin''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Make the '''connections''' as shown in the picture.&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 turn on the '''power supply'''.&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 can observe that the red '''LED''' is glowing.&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;| That is the '''I/O pin PA0''' gives the '''output''' of the '''coil''' which is '''logic 1'''.&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;| Thus we learnt working of a '''Normal Coil''' using an '''LED'''.&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;| Turn off the '''power supply'''.&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;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 5: Summary&lt;br /&gt;
&lt;br /&gt;
* Normal Coil&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we learnt about the working of&lt;br /&gt;
&lt;br /&gt;
* '''Normal Coil'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 6: Evaluation&lt;br /&gt;
&lt;br /&gt;
Suppose that the '''input''' to '''Normal Coil''' is '''logic 0'''&lt;br /&gt;
&lt;br /&gt;
What will be the '''state/output''' of the '''Normal Coil'''?&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Here is a self assessment question for you:&lt;br /&gt;
&lt;br /&gt;
Suppose that the '''input''' to '''Normal Coil''' is '''logic 0'''.&lt;br /&gt;
&lt;br /&gt;
What will be the '''state''' of the '''Normal Coil''' ?&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 7: Answer &lt;br /&gt;
&lt;br /&gt;
The state of the Normal Coil will be 0&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The answer is the '''state''' of the '''Normal Coil''' will be '''0'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 8:&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 9:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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 10:&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;| &lt;br /&gt;
* 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 11:&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 12:&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 13:&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/Normal-Coil/English</id>
		<title>OpenPLC-with-LDmicro/C2/Normal-Coil/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/Normal-Coil/English"/>
				<updated>2021-06-30T04:48:01Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: &lt;/p&gt;
&lt;hr /&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;
Welcome Slide&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Welcome to the spoken tutorial on '''Normal Coil.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 2: Learning Objectives&lt;br /&gt;
&lt;br /&gt;
* Normal Coil &lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will learn about the working of&lt;br /&gt;
&lt;br /&gt;
* '''Normal Coil '''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 3: System Requirements&lt;br /&gt;
&lt;br /&gt;
* '''Ubuntu Linux''' 18.04 OS&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''OpenPLC Mainboard'''&lt;br /&gt;
* 24V, 2A '''SMPS'''&lt;br /&gt;
* '''USBasp programmer'''&lt;br /&gt;
* '''Traffic Light module'''&lt;br /&gt;
* '''Switchboard module'''&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;
* '''OpenPLC Mainboard'''&lt;br /&gt;
* 24V, 2A '''SMPS'''&lt;br /&gt;
* '''USBasp programmer'''&lt;br /&gt;
* '''Traffic Light module''' and &lt;br /&gt;
* '''Switchboard module'''&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;
* Program OpenPLC Mainboard and&lt;br /&gt;
* Interface OpenPLC modules with Mainboard. &lt;br /&gt;
&lt;br /&gt;
If not, please refer to the relevant tutorials from [https://spoken-tutorial.org/ Home | spoken-tutorial.org]&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;|&lt;br /&gt;
* To follow this tutorial, you should know how to &lt;br /&gt;
** '''program OpenPLC Mainboard''' and&lt;br /&gt;
** '''interface OpenPLC modules''' with '''Mainboard'''. &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;| Slide 5: Prerequisites - Hardware setup&lt;br /&gt;
&lt;br /&gt;
hardware-prerequisite.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect''' SMPS''' and '''USBasp''' to the '''Mainboard''' as shown in the picture.&lt;br /&gt;
&lt;br /&gt;
Keep these connections throughout this tutorial.&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 ‘Instructions -&amp;gt; Insert Coil’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a '''Coil''' from '''Instructions''' 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;| We can observe that '''Coil''' is an '''output instruction'''.&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 coil&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on the '''Coil'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight ‘Type’ and ‘Source’&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| A dialog box opens.&lt;br /&gt;
&lt;br /&gt;
Here we can see two columns named '''‘Type’''' and '''‘Source’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to the types&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can see there are four types of '''coils'''.&lt;br /&gt;
&lt;br /&gt;
They are '''Normal, Negated, SET-Only''' and '''RESET-Only Coils'''.&lt;br /&gt;
&lt;br /&gt;
These coils have two '''source types''' which are''' Pin on MCU''' and '''Internal Relay'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to Normal, Pin on MCU&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| By default, the '''type''' of the '''coil''' is set to '''‘Normal’''' and '''source''' to '''‘Pin on MCU’'''.&lt;br /&gt;
&lt;br /&gt;
'''Pin on MCU''' means that the '''coil''' represents a '''pin''' on the '''microcontroller'''.&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;| Don’t change them. &lt;br /&gt;
&lt;br /&gt;
Keep the default settings as it is.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to other types&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will learn about other '''types''' of '''Coils''' and '''source types''' in the later tutorials.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the coil as LED &amp;gt;&amp;gt; Click the OK button.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the''' Coil''' as '''LED''' and click on the '''OK''' button.&lt;br /&gt;
&lt;br /&gt;
Remember that '''LDmicro''' is '''case sensitive'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the rung &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Note that the '''Coil''' is directly connected to the '''positive rail'''.&lt;br /&gt;
&lt;br /&gt;
So, the '''input''' to the '''Coil''' is '''logic 1'''.&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 will check the working of this '''logic'''.&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’ &amp;gt;&amp;gt; Click ‘Simulate -&amp;gt; Real-time simulation’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us turn on the '''simulation mode'''.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Simulation mode.'''&lt;br /&gt;
&lt;br /&gt;
Next, start real-time '''simulation''' as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight state of YLED in the I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Observe the '''state''' of '''YLED''' in the '''I/O list.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of LED in I/O list at the bottom of the screen&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe the '''state''' of '''YLED''' is 1.&lt;br /&gt;
&lt;br /&gt;
That is for a '''Normal Coil''' when the '''input''' is '''true''', the '''output''' is also '''true'''.&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' &amp;gt;&amp;gt; Click 'Simulate -&amp;gt; Simulation Mode'&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, turn off the '''simulation mode'''.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Halt Simulation.'''&lt;br /&gt;
&lt;br /&gt;
Then click '''Simulate''' and '''Simulation Mode'''&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''' the '''logic'''.&lt;br /&gt;
&lt;br /&gt;
The detailed steps on how to '''compile''' and save the '''logic''' are explained in the earlier tutorials. &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 on Microcontroller &amp;gt;&amp;gt; Select AVR ATmega16 40-PDIP &lt;br /&gt;
&lt;br /&gt;
Click on Settings &amp;gt;&amp;gt; Click on MCU parameters &amp;gt;&amp;gt; Change Crystal frequency to 16 &amp;gt;&amp;gt;Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on '''Settings''' and select the '''microcontroller AVR ATmega16 40-PDIP.''' &lt;br /&gt;
&lt;br /&gt;
Adjust its '''parameters''' as shown here.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on YLED in I/O list &amp;gt;&amp;gt; Select PA0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on the '''YLED''' in the '''I/O list'''.&lt;br /&gt;
&lt;br /&gt;
Then, assign '''pin PA0''' to the '''coil ‘YLED’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on Compile &amp;gt;&amp;gt; Click on Compile &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘normalcoil.hex’ &amp;gt;&amp;gt; Click on Save.&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''Compile''' the '''logic''' and save the '''hex file''' as ‘'''normalcoil.hex'''’.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘normalcoil.ld’ &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then save the '''ladder diagram''' as ‘'''normalcoil.ld'''’.&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 will see the working of this '''logic''' on '''hardware'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect Mainboard to PC using USBasp&lt;br /&gt;
&lt;br /&gt;
laptop-usbasp.jpg&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect the '''Mainboard''' to your laptop using '''USBasp'''.&lt;br /&gt;
&lt;br /&gt;
Turn on the '''power supply'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open terminal &amp;gt;&amp;gt; Type cd Desktop/LDmicro &amp;gt;&amp;gt; Press ENTER &amp;gt;&amp;gt; Type '''avrdude -c usbasp -p m16 -U flash:w:normalcoil.hex '''&amp;gt;&amp;gt; Press ENTER&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open the '''Terminal''' by pressing '''CTRL+ALT+T''' keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
Go to the folder where you saved the '''hex file'''.&lt;br /&gt;
&lt;br /&gt;
Type the '''command''' as shown to upload this '''hex file''' to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Turn off the '''power supply'''.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp connection''' from the laptop.&lt;br /&gt;
&lt;br /&gt;
This will prevent any '''hardware''' damage.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| normalcoil.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us see the '''connection''' details now. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| normalcoil.png&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect '''GND pin''' of the red '''LED''' of '''Traffic Light module''' to '''GND pin''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Then connect the +5V '''pin''' of the red '''LED''' to '''PA0 pin''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Make the '''connections''' as shown in the picture.&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 turn on the '''power supply'''.&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 can observe that the red '''LED''' is glowing.&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;| That is the '''I/O pin PA0''' gives the '''output''' of the '''coil''' which is '''logic 1'''.&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;| Thus we learnt working of a '''Normal Coil''' using an '''LED'''.&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;| Turn off the '''power supply'''.&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;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 5: Summary&lt;br /&gt;
&lt;br /&gt;
* Normal Coil&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we learnt about the working of&lt;br /&gt;
&lt;br /&gt;
* '''Normal Coil'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 6: Evaluation&lt;br /&gt;
&lt;br /&gt;
Suppose that the '''input''' to '''Normal Coil''' is '''logic 0'''&lt;br /&gt;
&lt;br /&gt;
What will be the '''state/output''' of the '''Normal Coil'''?&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Here is a self assessment question for you:&lt;br /&gt;
&lt;br /&gt;
Suppose that the '''input''' to '''Normal Coil''' is '''logic 0'''.&lt;br /&gt;
&lt;br /&gt;
What will be the '''state''' of the '''Normal Coil''' ?&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 7: Answer &lt;br /&gt;
&lt;br /&gt;
The state of the Normal Coil will be 0&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The answer is the '''state''' of the '''Normal Coil''' will be '''0'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 8:&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 9:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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 10:&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;| &lt;br /&gt;
* 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 11:&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 12:&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 13:&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/OpenPLC-Traffic-Light-and-Switchboard-Modules/English</id>
		<title>OpenPLC-with-LDmicro/C2/OpenPLC-Traffic-Light-and-Switchboard-Modules/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/OpenPLC-Traffic-Light-and-Switchboard-Modules/English"/>
				<updated>2021-06-30T04:47:00Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|| '''VISUAL CUE'''&lt;br /&gt;
|| '''NARRATION'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide 1: Welcome Slide&lt;br /&gt;
|| Welcome to the spoken tutorial on '''OpenPLC Traffic Light &amp;amp; Switchboard modules.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 2: Learning Objectives&lt;br /&gt;
* OpenPLC''' '''Traffic light module&lt;br /&gt;
* OpenPLC Switchboard module&lt;br /&gt;
&lt;br /&gt;
|| In this tutorial, we will learn about&lt;br /&gt;
* '''OpenPLC Traffic light''' module&lt;br /&gt;
* '''OpenPLC Switchboard''' module&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 3: System Requirements&lt;br /&gt;
* Ubuntu Linux 18.04 operating system&lt;br /&gt;
* OpenPLC Traffic light module&lt;br /&gt;
* OpenPLC Switchboard module&lt;br /&gt;
* OpenPLC Mainboard&lt;br /&gt;
* 24V, 2A SMPS&lt;br /&gt;
&lt;br /&gt;
|| To record this tutorial I am using:&lt;br /&gt;
* '''Ubuntu Linux 18.04''' operating system&lt;br /&gt;
* '''OpenPLC''' '''Traffic light''' module&lt;br /&gt;
* '''OpenPLC Switchboard''' module&lt;br /&gt;
* '''OpenPLC Mainboard'''&lt;br /&gt;
* '''24V, 2A SMPS'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 4: Pre-requisites&lt;br /&gt;
* OpenPLC Mainboard&lt;br /&gt;
* If not, please refer to the relevant tutorials from [https://spoken-tutorial.org/ Home | spoken-tutorial.org]&lt;br /&gt;
&lt;br /&gt;
|| &lt;br /&gt;
* To follow this tutorial, you should know about '''OpenPLC''' '''Mainboard'''.&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;
|| &lt;br /&gt;
|| First we will learn about the '''OpenPLC Traffic light module'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 5: Traffic Light module&lt;br /&gt;
&lt;br /&gt;
This '''module''' is used to &lt;br /&gt;
* implement the working of '''traffic lights'''&lt;br /&gt;
* visualize the status of any process with the '''built-in LEDs'''&lt;br /&gt;
|| &lt;br /&gt;
This '''module''' is used to&lt;br /&gt;
* implement the working of '''traffic lights''' and&lt;br /&gt;
* visualize the status of any process with the '''built-in LEDs'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Traffic.jpg&lt;br /&gt;
&lt;br /&gt;
|| This is a picture of the '''Traffic light module'''.&lt;br /&gt;
&lt;br /&gt;
This '''module''' replicates a '''traffic light'''. &lt;br /&gt;
&lt;br /&gt;
It has one red '''LED''' marked as '''STOP''' and one yellow '''LED''' marked as '''READY'''. &lt;br /&gt;
&lt;br /&gt;
At the bottom, it has 3 green '''LEDs''' marked as '''LEFT, GO '''and''' RIGHT.'''&lt;br /&gt;
|- &lt;br /&gt;
|| led-connectors.png&lt;br /&gt;
&lt;br /&gt;
|| You can access all these '''LEDs''' using the '''connectors''' present below. &lt;br /&gt;
|- &lt;br /&gt;
|| traffic-sled.png or (traffic.jpg)&lt;br /&gt;
&lt;br /&gt;
|| The red '''LED''' can also be accessed through the two '''connectors''' on the right of it.&lt;br /&gt;
&lt;br /&gt;
If you want to use a single '''LED''' you can use these '''connectors'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Let us see how to do simple experiments using a single '''LED'''.&lt;br /&gt;
|- &lt;br /&gt;
|| traffic.jpg&lt;br /&gt;
|| The '''anode''' and '''cathode''' of the red '''LED''' are given as '''connectors''' to the right of it.&lt;br /&gt;
&lt;br /&gt;
The '''anode''' is marked as '''+5V''' and '''cathode''' as '''GND''', which is '''Ground'''.&lt;br /&gt;
|-&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
&lt;br /&gt;
|| These '''connectors''' can be connected in 3 different ways.&lt;br /&gt;
&lt;br /&gt;
We will see one by one.&lt;br /&gt;
|- &lt;br /&gt;
|| traffic.jpg&lt;br /&gt;
&lt;br /&gt;
|| We can connect '''+5V pin''' to '''5V''' and '''GND pin''' to any '''I/O pin''' of the '''microcontroller'''.&lt;br /&gt;
|- &lt;br /&gt;
|| traffic.jpg&lt;br /&gt;
|| Connect '''GND pin''' to 0V and '''+5V pin''' to any '''I/O pin''' of the '''microcontroller'''.&lt;br /&gt;
|- &lt;br /&gt;
|| traffic.jpg&lt;br /&gt;
|| Otherwise connect both '''+5V''' and '''GND pins''' to the '''I/O pins''' of the '''microcontroller'''. &lt;br /&gt;
|- &lt;br /&gt;
|| Led-connectors.png&lt;br /&gt;
&lt;br /&gt;
traffic.jpg image&lt;br /&gt;
|| We will see how to use '''LEDs''' with the '''connectors''' at the bottom of the '''module'''.&lt;br /&gt;
&lt;br /&gt;
Each '''LED’s cathode''' is taken out through the '''connectors''' at the bottom of the '''module'''.&lt;br /&gt;
&lt;br /&gt;
Note that the rightmost '''pin''' marked as '''‘EN’''' is not an '''LED connector'''. &lt;br /&gt;
|-&lt;br /&gt;
|- &lt;br /&gt;
|| Led-connectors.png&lt;br /&gt;
&lt;br /&gt;
traffic.jpg image&lt;br /&gt;
|| Each '''connector''' is marked with the first letter of the respective '''LED''' name.&lt;br /&gt;
&lt;br /&gt;
We will see one by one starting from right.&lt;br /&gt;
# '''Ri''' is for green '''LED''' marked as '''RIGHT'''&lt;br /&gt;
# '''S''' is for red '''LED''' marked as '''STOP'''&lt;br /&gt;
# '''Re''' is for yellow '''LED''' marked as '''READY'''&lt;br /&gt;
# '''G''' is for green '''LED''' marked as '''GO'''&lt;br /&gt;
# '''L''' is for green '''LED''' marked as '''LEFT'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| traffic-enable.png&lt;br /&gt;
|| '''‘EN’''' is an '''active low enable pin''' which enables all the '''LED pins'''.&lt;br /&gt;
&lt;br /&gt;
To the left of the yellow '''LED''', we can find a '''connector''' marked '''+5V'''.&lt;br /&gt;
&lt;br /&gt;
This is the '''power pin''' of the '''module'''.&lt;br /&gt;
&lt;br /&gt;
That is, none of the '''LED''' glows unless you make these two connections.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 6: LED to glow &lt;br /&gt;
* +5V pin should be given 5V.&lt;br /&gt;
* EN and the respective '''LED''' pin should be grounded or given a logic-low signal.&lt;br /&gt;
&lt;br /&gt;
|| Therefore, for any '''LED''' to glow you should follow the below:&lt;br /&gt;
# '''+5V pin''' should be given '''5V'''.&lt;br /&gt;
# '''EN''' and the respective '''LED pin''' should be '''ground'''ed or given a '''logic-low signal'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Now we’ll see the working of the '''module'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 7: How can the '''Traffic Light module''' be powered?&lt;br /&gt;
&lt;br /&gt;
'''Traffic Light module''' can be powered using the output power pins of the Mainboard&lt;br /&gt;
|| How can the '''Traffic Light module''' be powered?&lt;br /&gt;
&lt;br /&gt;
It can be powered using the output '''power pins''' of the '''Mainboard'''.&lt;br /&gt;
|- &lt;br /&gt;
|| SMPS-Mainboard.jpg - add in editing&lt;br /&gt;
|| Connect the '''SMPS''' to the '''Mainboard''' as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| led-connectors.png&lt;br /&gt;
|| First we will see the demo of this '''module''' using the '''connectors''' available at the bottom.&lt;br /&gt;
|- &lt;br /&gt;
|| demo1.png&lt;br /&gt;
&lt;br /&gt;
Point to the image as per narration&lt;br /&gt;
|| Connect '''5V''' to the '''power pin''' i.e. '''+5V pin''' to the left of the yellow '''LED'''. &lt;br /&gt;
&lt;br /&gt;
Connect '''0V''' to the '''‘EN’ pin'''.&lt;br /&gt;
&lt;br /&gt;
Then, connect '''0V''' to any of the '''LEDs'''.&lt;br /&gt;
&lt;br /&gt;
I’m connecting it to the '''pins''' marked '''‘G’''', '''‘Re’''' and '''‘S’'''.&lt;br /&gt;
|- &lt;br /&gt;
|| demo1.png&lt;br /&gt;
|| Make the connections as shown in the picture.&lt;br /&gt;
&lt;br /&gt;
Remember to turn '''off''' the '''power supply''' when you change or make new connections.&lt;br /&gt;
|- &lt;br /&gt;
|| Turn '''on''' the '''power supply''' &lt;br /&gt;
|| After making all the connections turn '''on''' the '''power supply''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
The red, yellow and middle green '''LED''' has started glowing.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Do not use '''I/O pins''' of the '''Mainboard''' to power up the '''pin''' marked '''+5V'''.&lt;br /&gt;
&lt;br /&gt;
Because it may affect the intensity of the '''LED'''. &lt;br /&gt;
|- &lt;br /&gt;
|| Disconnect the '''‘EN’ pin'''&lt;br /&gt;
|| Now disconnect the '''‘EN’ pin'''.&lt;br /&gt;
&lt;br /&gt;
We can observe that all '''LEDs''' go '''off'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Turn '''off''' the '''power supply'''&lt;br /&gt;
|| Turn '''off''' the '''power supply'''.&lt;br /&gt;
|- &lt;br /&gt;
|| traffic-sled.png&lt;br /&gt;
|| Next, we will see the demo on how to use this '''module''' when a single '''LED''' is needed.&lt;br /&gt;
|- &lt;br /&gt;
|| demo2.png&lt;br /&gt;
|| Connect '''5V''' to the '''+5V pin''' on the right of the red '''LED'''.&lt;br /&gt;
&lt;br /&gt;
Connect '''0V''' to the '''pin''' marked '''GND'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Turn '''on''' the '''power supply'''&lt;br /&gt;
|| Turn '''on''' the '''power supply'''.&lt;br /&gt;
&lt;br /&gt;
This will make only the red '''LED''' to glow.&lt;br /&gt;
&lt;br /&gt;
Thus, there is no need to connect power and enable '''pins''' for this connection.&lt;br /&gt;
|- &lt;br /&gt;
|| Turn '''off''' the '''power supply'''&lt;br /&gt;
|| Turn '''off''' the '''power supply'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| We have seen how '''Traffic light module''' can be used in different ways.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Now we’ll learn about the '''OpenPLC Switchboard module'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 5: Switchboard module&lt;br /&gt;
* The goal of this '''module''' is to get familiarized with different types of '''switches'''&lt;br /&gt;
* In particular their usage in the real time applications in industries&lt;br /&gt;
|| &lt;br /&gt;
&lt;br /&gt;
The goal of this '''module''' is to get familiarized with different types of '''switches'''.&lt;br /&gt;
&lt;br /&gt;
In particular their usage in the real time applications in industries.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 6: Main Components&lt;br /&gt;
* 4 Normally Open '''switches'''&lt;br /&gt;
* 4 Normally Closed '''switches'''&lt;br /&gt;
* 2 '''Latched action switches''' and&lt;br /&gt;
* '''LEDs''' for each '''switch'''&lt;br /&gt;
&lt;br /&gt;
|| This module has&lt;br /&gt;
* 4 Normally Open '''switches'''&lt;br /&gt;
* 4 Normally Closed '''switches'''&lt;br /&gt;
* 2 '''Latched action switches''' and&lt;br /&gt;
* '''LEDs''' for each '''switch'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| switchboard.jpg&lt;br /&gt;
|| This is the '''Switchboard module'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 7: Types of Switches:&lt;br /&gt;
* Normally open (NO)&lt;br /&gt;
* Normally closed (NC)&lt;br /&gt;
* Latched action (L)&lt;br /&gt;
&lt;br /&gt;
|| In this '''module''', there are three kinds of '''switches''' available.&lt;br /&gt;
&lt;br /&gt;
They are '''Normally Open, Normally Closed '''and''' Latched action switches.'''&lt;br /&gt;
&lt;br /&gt;
'''Normally Open''' is represented as '''NO''' and '''Normally Closed''' is represented as '''NC'''.&lt;br /&gt;
&lt;br /&gt;
'''Latched action switches''' are represented as '''L'''.&lt;br /&gt;
|- &lt;br /&gt;
|| SB-switches.png&lt;br /&gt;
|| We will now look at their arrangement on the '''module''' from bottom to top.&lt;br /&gt;
|- &lt;br /&gt;
|| SB-switches.png&lt;br /&gt;
&lt;br /&gt;
Highlight Latch switches&lt;br /&gt;
&lt;br /&gt;
Then NC and then NO&lt;br /&gt;
|| At the bottom, we have two '''Latched action switches'''.&lt;br /&gt;
&lt;br /&gt;
Above that we have 4 '''Normally Closed''' and then 4 '''Normally Open switches'''.&lt;br /&gt;
|- &lt;br /&gt;
|| SB-leds.png&lt;br /&gt;
&lt;br /&gt;
|| Above these '''switches''' we have '''LEDs''' corresponding to each '''switch'''. &lt;br /&gt;
&lt;br /&gt;
The '''LEDs''' are arranged in the same order as that of '''switches'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Each '''LED''' glow indicates a corresponding '''switch''' press.&lt;br /&gt;
|- &lt;br /&gt;
|| SB-connectors.png&lt;br /&gt;
|| On the top we have '''female berg connectors''' for connections.&lt;br /&gt;
|- &lt;br /&gt;
|| SB-connectors-z.png&lt;br /&gt;
&lt;br /&gt;
Point to each particular pin&lt;br /&gt;
|| Next, we will see about the '''pins'''.&lt;br /&gt;
&lt;br /&gt;
Starting from the right, the first two '''pins''' are '''GND''' and '''5V''' respectively.&lt;br /&gt;
&lt;br /&gt;
These are the input '''power pins''' of this '''module.'''&lt;br /&gt;
&lt;br /&gt;
Then we have 4 '''pins''' for 4 '''NO switches '''and 4 pins for 4 '''NC switches.''' &lt;br /&gt;
&lt;br /&gt;
The last 2 '''pins''' are for 2 '''latched action switches'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 8: Important Note&lt;br /&gt;
* NO and latched action '''switches''' must be connected to the '''I/Os''' of the '''microcontroller'''&lt;br /&gt;
* Only then the '''LEDs''' of the corresponding '''switches''' will work&lt;br /&gt;
* '''LEDs''' of '''NC switches''' will work, even if they are not connected to '''I/Os'''&lt;br /&gt;
&lt;br /&gt;
|| '''NO''' and '''Latched action switches''' must be connected to the '''I/Os''' of the '''microcontroller'''.&lt;br /&gt;
&lt;br /&gt;
Only then the '''LEDs''' of the corresponding '''switches''' will work.&lt;br /&gt;
&lt;br /&gt;
LEDs of '''NC switches''' will work, even if they are not connected to the '''I/Os''' of the '''microcontroller'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Now, we’ll learn how each type of the '''switch''' works.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 9: Normally Open Switch&lt;br /&gt;
* The output '''pin''' of a '''NO switch '''will read '''logic 0''' when it is not pressed&lt;br /&gt;
* When the '''switch''' is pressed, the output '''pin''' will read '''5V'''&lt;br /&gt;
* This is due to the supply from the '''microcontroller'''’s internal '''pull up register'''&lt;br /&gt;
&lt;br /&gt;
|| The output '''pin''' of a '''NO switch '''will read '''logic 0''' when it is not pressed.&lt;br /&gt;
&lt;br /&gt;
When the '''switch''' is pressed, the output '''pin''' will read '''5V'''.&lt;br /&gt;
&lt;br /&gt;
This is due to the supply from the '''microcontroller'''’s internal '''pull up register'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 10: Normally Closed switch&lt;br /&gt;
* The output '''pin''' of a '''NC switch''' will read '''5V''' when it is not pressed&lt;br /&gt;
* This is due to the supply from the '''microcontroller'''’s internal '''pull up register'''&lt;br /&gt;
* Upon '''switch''' press, the output '''pin''' will read '''logic 0''' or '''ground'''&lt;br /&gt;
&lt;br /&gt;
|| The output '''pin''' of a '''NC switch''' will read '''5V''' when it is not pressed.&lt;br /&gt;
&lt;br /&gt;
This is due to the supply from the '''microcontroller'''’s internal '''pull up register'''.&lt;br /&gt;
&lt;br /&gt;
Upon '''switch''' press, the output '''pin''' will read '''logic 0''' or '''ground'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 11: Latched action switch&lt;br /&gt;
* It is basically a '''push-to-make, push-to-break''' type of '''switch'''&lt;br /&gt;
* That is, the output '''pin''' will read '''5V''', when it is pressed for the first time&lt;br /&gt;
* The output '''pin''' will read '''0V''', when it is pressed for the second time&lt;br /&gt;
&lt;br /&gt;
|| '''Latched action switch''' is basically a '''push-to-make, push-to-break''' type of '''switch'''.&lt;br /&gt;
&lt;br /&gt;
That is, the output '''pin''' will read '''5V''', when it is pressed for the first time.&lt;br /&gt;
&lt;br /&gt;
The output '''pin''' will read '''0V''', when it is pressed for the second time.&lt;br /&gt;
&lt;br /&gt;
Working of the '''LED''' of a''' latched action switch '''corresponds to that of a''' NO switch.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 12: How can the Switchboard module be powered?&lt;br /&gt;
&lt;br /&gt;
'''Switchboard module''' can be powered using the output '''power pins''' of the '''Mainboard'''&lt;br /&gt;
|| How can the '''Switchboard module''' be powered?&lt;br /&gt;
&lt;br /&gt;
It can be powered using the output '''power pins''' of the '''Mainboard'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| We have learnt about the different types of '''switches''' in the '''Switchboard module'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Using these '''modules''' we will learn about '''LDmicro''' instructions on '''OpenPLC''' in future tutorials.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| This brings us to the end of this tutorial.&lt;br /&gt;
&lt;br /&gt;
Let us summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 8: Summary&lt;br /&gt;
* '''OpenPLC Traffic light module'''&lt;br /&gt;
* '''OpenPLC Switchboard module'''&lt;br /&gt;
&lt;br /&gt;
|| In this tutorial, we learnt about&lt;br /&gt;
* '''OpenPLC Traffic light module'''&lt;br /&gt;
* '''OpenPLC Switchboard module'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 9: About&lt;br /&gt;
&lt;br /&gt;
Spoken Tutorial project&lt;br /&gt;
|| 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;
|| Slide 10:&lt;br /&gt;
&lt;br /&gt;
Spoken Tutorial workshops&lt;br /&gt;
|| The''' Spoken Tutorial Project''' team:&lt;br /&gt;
*conducts workshops using spoken tutorials and&lt;br /&gt;
*gives certificates on passing online tests.&lt;br /&gt;
&lt;br /&gt;
For more details, please write to us.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 11:&lt;br /&gt;
&lt;br /&gt;
Forum for specific questions:&lt;br /&gt;
|| Please post your timed queries in this forum.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 12:&lt;br /&gt;
&lt;br /&gt;
Forum for specific questions:&lt;br /&gt;
|| 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;
|| Slide 13:&lt;br /&gt;
&lt;br /&gt;
Acknowledgement&lt;br /&gt;
|| Spoken Tutorial Project is funded by MHRD, Government of India.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 14:&lt;br /&gt;
&lt;br /&gt;
Thank you slide&lt;br /&gt;
|| 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 the 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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/Programming-OpenPLC/English</id>
		<title>OpenPLC-with-LDmicro/C2/Programming-OpenPLC/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/Programming-OpenPLC/English"/>
				<updated>2021-06-30T04:43:24Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: &lt;/p&gt;
&lt;hr /&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;
Welcome Slide&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Welcome to the spoken tutorial on '''Programming OpenPLC'''.&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;
* How to program the OpenPLC Mainboard&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 '''program''' the '''OpenPLC Mainboard'''&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;
* '''OpenPLC Mainboard'''&lt;br /&gt;
* 24V, 2A '''SMPS'''&lt;br /&gt;
* '''USBasp programmer'''&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;
* '''OpenPLC Mainboard'''&lt;br /&gt;
* '''24V, 2A SMPS'''&lt;br /&gt;
* '''USBasp programmer'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 4: &lt;br /&gt;
&lt;br /&gt;
Pre-requisites&lt;br /&gt;
&lt;br /&gt;
* How to generate a '''hex file''' of a '''ladder''' diagram in '''LDmicro'''. &lt;br /&gt;
* If not, please refer to the relevant tutorials 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 generate '''hex file''' of 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;| Now, we’ll see how to upload a '''program''' to '''OpenPLC Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 5: Code file - sample.hex&lt;br /&gt;
&lt;br /&gt;
* The files used in this tutorial are available in the '''Code Files''' link on this tutorial page&lt;br /&gt;
* Please download and extract them&lt;br /&gt;
* Make a copy and then use them while practising&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will use the '''sample.hex '''file which was created earlier.&lt;br /&gt;
&lt;br /&gt;
* The files used in this tutorial are available in the '''Code Files''' link on this tutorial page.&lt;br /&gt;
* Please download and extract them&lt;br /&gt;
* Make a copy and then 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;| Slide6:&lt;br /&gt;
&lt;br /&gt;
USBasp-programmer.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We are using a '''USBasp''', to '''program''' our '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 7: &lt;br /&gt;
&lt;br /&gt;
Mainboard-computer-connection.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Make the connections as shown in the picture.&lt;br /&gt;
&lt;br /&gt;
Connect '''SMPS''' and '''USBasp''' to the '''Mainboard''' as shown here.&lt;br /&gt;
&lt;br /&gt;
Recall that we have explained these connections in the earlier tutorials.&lt;br /&gt;
&lt;br /&gt;
Turn on the '''power supply'''.&lt;br /&gt;
&lt;br /&gt;
Make sure that one of the '''LEDs''' on '''USBasp''' is glowing.&lt;br /&gt;
&lt;br /&gt;
This indicates that the '''programmer''' is connected properly.&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;| Open the '''terminal''' by pressing '''CTRL+ALT+T''' keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
If you’re a '''Windows''' user open '''command prompt'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type cd Desktop/LDmicro&lt;br /&gt;
&lt;br /&gt;
Press ENTER&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type '''cd Desktop/LDmicro''' and press '''Enter'''.&lt;br /&gt;
&lt;br /&gt;
I have saved a file '''sample.hex '''in the above folder.&lt;br /&gt;
&lt;br /&gt;
Go to the location where you’ve saved the '''hex file'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type, &lt;br /&gt;
&lt;br /&gt;
'''avrdude -c usbasp -p m16 -U flash:w:sample.hex'''&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now type the '''command''' as shown.&lt;br /&gt;
&lt;br /&gt;
For uploading the '''program''' we are using a '''command line tool, AVRDUDE'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight according to narration&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''hyphen c''' indicates the '''programmer id''' of the '''programmer'''.&lt;br /&gt;
&lt;br /&gt;
Since we are using an USBasp programmer, here the '''id''' is given as '''usbasp'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight according to narration&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''hyphen p''' indicates the part number of the '''microcontroller''' that we are using.&lt;br /&gt;
&lt;br /&gt;
In our case it is '''ATMEGA16'''. &lt;br /&gt;
&lt;br /&gt;
So we have specified it as '''m16'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight according to narration&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''hyphen capital U''' handles all '''memory read''' and '''write''' operations.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type flash&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''flash '''indicates the '''flash memory''' and '''w '''indicates the '''write''' operations.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight according to narration&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''sample.hex''' is the file that we want to upload.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Press ENTER&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Press '''ENTER.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight red light&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can see another '''LED''' on the '''USBasp''' is blinking.&lt;br /&gt;
&lt;br /&gt;
This indicates that it is communicating with the '''Mainboard''' appropriately.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight avrdude: 364 bytes of flash verified &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In the '''terminal''', we get '''avrdude: 364 bytes of flash verified''' &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the output&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Note that the number of '''bytes''' varies from '''program''' to '''program'''.&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;| If you don’t get either of the indications, it means that '''programming''' isn’t done properly.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 8:&lt;br /&gt;
&lt;br /&gt;
Additional Reading Material&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Refer to the '''Additional reading material''' of this tutorial to know more about:&lt;br /&gt;
&lt;br /&gt;
# Precautions that should be taken before '''programming'''.&lt;br /&gt;
# Ways of troubleshoot when the '''Mainboard''' is not '''programmed''' properly.&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;| Let us see various part numbers for different '''controllers''' &amp;amp; '''programmers'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 9: Controller’s part number list&lt;br /&gt;
&lt;br /&gt;
List of part number for Controllers and Programmers is given in the below link:&lt;br /&gt;
&lt;br /&gt;
[https://www.nongnu.org/avrdude/user-manual/avrdude_4.html#Option-Descriptions https://www.nongnu.org/avrdude/user-manual/avrdude_4.html#Option-Descriptions]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Highlight with box&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Go to the given link.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight m16&lt;br /&gt;
&lt;br /&gt;
Highlight usbasp&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we have used '''ATmega16'''. &lt;br /&gt;
&lt;br /&gt;
We can observe that the part '''id''' is '''m16 '''according to the list.&lt;br /&gt;
&lt;br /&gt;
The part '''id''' of '''USBasp programmer''' as '''‘usbasp’'''.&lt;br /&gt;
&lt;br /&gt;
You can refer to this manual, if you are using a different '''microcontroller''' or '''programmer'''.&lt;br /&gt;
&lt;br /&gt;
It also contains the information of the '''command line''' options to '''control AVRDUDE’s''' behavior.&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 10:&lt;br /&gt;
&lt;br /&gt;
Summary&lt;br /&gt;
&lt;br /&gt;
We have learnt how to&lt;br /&gt;
&lt;br /&gt;
* Program the '''OpenPLC Mainboard'''&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we learnt to '''program''' the '''OpenPLC Mainboard'''&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;
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 13:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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 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;| &lt;br /&gt;
* 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 15:&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;|&lt;br /&gt;
* Do you have any general / technical questions on '''OpenPLC'''?&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 16:&lt;br /&gt;
&lt;br /&gt;
Acknowledgement&lt;br /&gt;
| style=&amp;quot;border:0.5pt 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 17:&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/OpenPLC-Mainboard/English</id>
		<title>OpenPLC-with-LDmicro/C2/OpenPLC-Mainboard/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/OpenPLC-Mainboard/English"/>
				<updated>2021-06-30T04:42:23Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: &lt;/p&gt;
&lt;hr /&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;
Welcome Slide&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Welcome to the spoken tutorial on '''OpenPLC Mainboard'''.&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;
* Various Components on''' OpenPLC Mainboard'''&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will learn about&lt;br /&gt;
&lt;br /&gt;
* Various components of''' OpenPLC Mainboard'''&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;
* OpenPLC Mainboard&lt;br /&gt;
* 24V, 2A SMPS&lt;br /&gt;
* USBasp programmer&lt;br /&gt;
* Ubuntu Linux 18.04 operating system&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;
* '''OpenPLC Mainboard'''&lt;br /&gt;
* 24V, 2A '''SMPS'''&lt;br /&gt;
* '''USBasp''' programmer&lt;br /&gt;
* '''Ubuntu Linux 18.04''' operating system&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 4:&lt;br /&gt;
&lt;br /&gt;
OpenPLC hardware&lt;br /&gt;
&lt;br /&gt;
* Affordable, open source and modular hardware&lt;br /&gt;
* Flexible and can be interfaced with any electronic module&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
* '''OpenPLC''' is an affordable, open source &amp;amp; modular hardware developed at '''IIT Bombay''' by '''FOSSEE''' team.&lt;br /&gt;
* This '''board''' is flexible and can be interfaced with any '''electronic module''' available in the market.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Development-board.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This is a picture of '''OpenPLC  Mainboard.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| power-unit.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This highlighted section is the '''power unit''' of the '''board'''.&lt;br /&gt;
&lt;br /&gt;
It is further subdivided into '''input''' and '''output power sections'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Input Power Section:&lt;br /&gt;
&lt;br /&gt;
input-power-unit.png&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will now take a look at the '''input power section''' of the '''board'''.&lt;br /&gt;
&lt;br /&gt;
The '''board''' must be powered using 24 volt '''DC''' power supply.&lt;br /&gt;
&lt;br /&gt;
The 24 volt and 12 volt connections are capable of handling upto 2 amperes of current.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight input power screw terminals&lt;br /&gt;
&lt;br /&gt;
(input-power-unit.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The on '''board 24V input power terminals''' are shown on your screen marked '''GND '''which is '''ground''', and '''24V'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| SMPS.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We are using a 24V, 2A '''SMPS''' for power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight L, N, GND&lt;br /&gt;
&lt;br /&gt;
(SMPS-front.jpg)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We have to '''connect line, neutral''' and '''ground terminals''' of 3-pin '''AC''' power cord to '''SMPS'''.&lt;br /&gt;
&lt;br /&gt;
Make sure that you identify the '''terminals''' of 3-pin '''AC''' power cord correctly.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight -V, +V&lt;br /&gt;
&lt;br /&gt;
(input-power-connections.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect the '''+V''' and '''-V''' ends of the '''SMPS''' to '''24V''' and '''GND''' of the '''mainboard''' as shown here.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| wrong-connection.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| While making connections, make sure that exposed metal from the wire is not protruding out.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| wrong-connection.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This is a wrong way to connect a wire.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| wrong-connection.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We should not connect the wires in this fashion as this may cause electrical shorts later on.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| correct-connection.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This is a right way to connect a wire.&lt;br /&gt;
&lt;br /&gt;
Tighten the screws properly. &lt;br /&gt;
&lt;br /&gt;
Tug the wire moderately to ensure that they are secured in place.&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;| After making all the connections properly, turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| D2-glow.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Make sure that the '''D2 LED''' is glowing on your '''board''' which indicates that the '''board''' is powered up.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Output power section:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;lt;output-power-pins.png with labels&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will now take a look at the '''output power''' section.&lt;br /&gt;
&lt;br /&gt;
'''24, 12, 5 V''' and '''Ground outputs''' are provided for connections with '''external modules.'''&lt;br /&gt;
&lt;br /&gt;
The connections are provided through 4 different types of '''connectors'''. They are:&lt;br /&gt;
&lt;br /&gt;
* '''Relimate'''&lt;br /&gt;
* '''Male berg strip'''&lt;br /&gt;
* '''Female berg strip'''&lt;br /&gt;
* '''Screw terminal'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight relimate connectors&lt;br /&gt;
&lt;br /&gt;
(output-power-pins.png)&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| There are 4 '''relimate connectors''' on the '''board''' as marked in the picture.&lt;br /&gt;
&lt;br /&gt;
Most of the '''modules''' developed by''' FOSSEE '''will be compatible with these '''connectors'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight relimate connectors&lt;br /&gt;
&lt;br /&gt;
(output-power-pins.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| These will be easier to access with multi strand cables, if you do not have single strand cables.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight female and male connectors&lt;br /&gt;
&lt;br /&gt;
output-power-pins.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Some '''external modules''' in the market are available with either '''male''' or '''female berg''' connections.&lt;br /&gt;
&lt;br /&gt;
In order to accommodate both types of '''modules''', we have '''male''' as well as '''female''' connectors.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight microcontroller&lt;br /&gt;
&lt;br /&gt;
(Development-board.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| At the heart of the '''mainboard''' is '''ATMega16 microcontroller.''' &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;| The '''microcontroller''' has 4 ports namely '''PORTA, PORTB, PORTC''' and '''PORTD'''. &lt;br /&gt;
&lt;br /&gt;
These '''ports''' may be configured to use as a '''digital input''' or '''digital output''' as desired.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| portA.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''Port A''' can be accessed from pin 0 to 7 through this section as labelled.&lt;br /&gt;
&lt;br /&gt;
'''Port A''' can also be configured as '''analog inputs'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight 4 pins beside port A&lt;br /&gt;
&lt;br /&gt;
(portA.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The 4 pins marked doesn’t belong to '''Port A'''. &lt;br /&gt;
&lt;br /&gt;
They are '''output power pins''' as described before.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| portB.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''Port B''' can be accessed from pin 0 to 7 through this section as labelled.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| portC.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Similarly, '''PORT C''' &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| portD.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| And '''PORT D'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight female, male berg connectors and screw terminals(separately)&lt;br /&gt;
&lt;br /&gt;
(portD.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can connect external '''inputs''' or '''outputs''' to the '''board''' in either of the 3 ways:&lt;br /&gt;
&lt;br /&gt;
* '''Female berg''' connectors or&lt;br /&gt;
* '''Male berg''' connectors &lt;br /&gt;
* '''Screw terminals'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| reset.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can reset the program in the '''microcontroller''' using the '''RESET''' button.&lt;br /&gt;
&lt;br /&gt;
Pressing the '''RESET''' button will only reset the state of '''program variables'''.&lt;br /&gt;
&lt;br /&gt;
It will not erase the program from the '''microcontroller'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| ISP-header.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This is a standard '''ISP header''' to program the '''microcontroller'''.&lt;br /&gt;
&lt;br /&gt;
We can connect an external '''programmer''' to this header and program the '''controller'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| ISP-connection1.jpg&lt;br /&gt;
&lt;br /&gt;
ISP-connection2.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To connect the header, simply match the notch on the '''ISP''' cable with the groove in the header as shown.&lt;br /&gt;
&lt;br /&gt;
The programmer shown in this tutorial is an '''USBasp programmer'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| UART.png&lt;br /&gt;
&lt;br /&gt;
(Highlight UART pins with red box)&lt;br /&gt;
&lt;br /&gt;
Highlight status LEDs &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The '''UART''' pins along with '''5V''' and '''GND''' are provided to attach an external '''UART module'''.&lt;br /&gt;
&lt;br /&gt;
The pin arrangements are shown in the picture.&lt;br /&gt;
&lt;br /&gt;
There are two '''status LEDs''' near the header to notify '''communication status'''.&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;
Points to remember:&lt;br /&gt;
&lt;br /&gt;
* Most of the '''modules''' developed by '''FOSSEE''' run on 12 volts&lt;br /&gt;
* 24 volt connection is also provided &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Points to remember:&lt;br /&gt;
&lt;br /&gt;
* Almost all the '''modules''' developed by '''FOSSEE''' are designed to work with 12 volts.&lt;br /&gt;
* But since most '''PLC modules''' operate on 24 volts, we are providing an option to access '''24V''' on '''board'''.&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 6: &lt;br /&gt;
&lt;br /&gt;
Summary&lt;br /&gt;
&lt;br /&gt;
In this tutorial, we learnt about &lt;br /&gt;
&lt;br /&gt;
* Various components on''' OpenPLC Mainboard'''&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Summary:&lt;br /&gt;
&lt;br /&gt;
In this tutorial, we learnt about &lt;br /&gt;
&lt;br /&gt;
* Various components of '''OpenPLC Mainboard'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 7:&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 8:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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 9:&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 10:&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 11:&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 12:&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/OpenPLC-Mainboard/English</id>
		<title>OpenPLC-with-LDmicro/C2/OpenPLC-Mainboard/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/OpenPLC-Mainboard/English"/>
				<updated>2021-06-30T04:42:07Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: &lt;/p&gt;
&lt;hr /&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;
Welcome &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Welcome to the spoken tutorial on '''OpenPLC Mainboard'''.&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;
* Various Components on''' OpenPLC Mainboard'''&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will learn about&lt;br /&gt;
&lt;br /&gt;
* Various components of''' OpenPLC Mainboard'''&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;
* OpenPLC Mainboard&lt;br /&gt;
* 24V, 2A SMPS&lt;br /&gt;
* USBasp programmer&lt;br /&gt;
* Ubuntu Linux 18.04 operating system&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;
* '''OpenPLC Mainboard'''&lt;br /&gt;
* 24V, 2A '''SMPS'''&lt;br /&gt;
* '''USBasp''' programmer&lt;br /&gt;
* '''Ubuntu Linux 18.04''' operating system&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 4:&lt;br /&gt;
&lt;br /&gt;
OpenPLC hardware&lt;br /&gt;
&lt;br /&gt;
* Affordable, open source and modular hardware&lt;br /&gt;
* Flexible and can be interfaced with any electronic module&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
* '''OpenPLC''' is an affordable, open source &amp;amp; modular hardware developed at '''IIT Bombay''' by '''FOSSEE''' team.&lt;br /&gt;
* This '''board''' is flexible and can be interfaced with any '''electronic module''' available in the market.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Development-board.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This is a picture of '''OpenPLC  Mainboard.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| power-unit.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This highlighted section is the '''power unit''' of the '''board'''.&lt;br /&gt;
&lt;br /&gt;
It is further subdivided into '''input''' and '''output power sections'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Input Power Section:&lt;br /&gt;
&lt;br /&gt;
input-power-unit.png&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will now take a look at the '''input power section''' of the '''board'''.&lt;br /&gt;
&lt;br /&gt;
The '''board''' must be powered using 24 volt '''DC''' power supply.&lt;br /&gt;
&lt;br /&gt;
The 24 volt and 12 volt connections are capable of handling upto 2 amperes of current.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight input power screw terminals&lt;br /&gt;
&lt;br /&gt;
(input-power-unit.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The on '''board 24V input power terminals''' are shown on your screen marked '''GND '''which is '''ground''', and '''24V'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| SMPS.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We are using a 24V, 2A '''SMPS''' for power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight L, N, GND&lt;br /&gt;
&lt;br /&gt;
(SMPS-front.jpg)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We have to '''connect line, neutral''' and '''ground terminals''' of 3-pin '''AC''' power cord to '''SMPS'''.&lt;br /&gt;
&lt;br /&gt;
Make sure that you identify the '''terminals''' of 3-pin '''AC''' power cord correctly.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight -V, +V&lt;br /&gt;
&lt;br /&gt;
(input-power-connections.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect the '''+V''' and '''-V''' ends of the '''SMPS''' to '''24V''' and '''GND''' of the '''mainboard''' as shown here.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| wrong-connection.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| While making connections, make sure that exposed metal from the wire is not protruding out.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| wrong-connection.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This is a wrong way to connect a wire.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| wrong-connection.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We should not connect the wires in this fashion as this may cause electrical shorts later on.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| correct-connection.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This is a right way to connect a wire.&lt;br /&gt;
&lt;br /&gt;
Tighten the screws properly. &lt;br /&gt;
&lt;br /&gt;
Tug the wire moderately to ensure that they are secured in place.&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;| After making all the connections properly, turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| D2-glow.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Make sure that the '''D2 LED''' is glowing on your '''board''' which indicates that the '''board''' is powered up.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Output power section:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;lt;output-power-pins.png with labels&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will now take a look at the '''output power''' section.&lt;br /&gt;
&lt;br /&gt;
'''24, 12, 5 V''' and '''Ground outputs''' are provided for connections with '''external modules.'''&lt;br /&gt;
&lt;br /&gt;
The connections are provided through 4 different types of '''connectors'''. They are:&lt;br /&gt;
&lt;br /&gt;
* '''Relimate'''&lt;br /&gt;
* '''Male berg strip'''&lt;br /&gt;
* '''Female berg strip'''&lt;br /&gt;
* '''Screw terminal'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight relimate connectors&lt;br /&gt;
&lt;br /&gt;
(output-power-pins.png)&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| There are 4 '''relimate connectors''' on the '''board''' as marked in the picture.&lt;br /&gt;
&lt;br /&gt;
Most of the '''modules''' developed by''' FOSSEE '''will be compatible with these '''connectors'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight relimate connectors&lt;br /&gt;
&lt;br /&gt;
(output-power-pins.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| These will be easier to access with multi strand cables, if you do not have single strand cables.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight female and male connectors&lt;br /&gt;
&lt;br /&gt;
output-power-pins.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Some '''external modules''' in the market are available with either '''male''' or '''female berg''' connections.&lt;br /&gt;
&lt;br /&gt;
In order to accommodate both types of '''modules''', we have '''male''' as well as '''female''' connectors.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight microcontroller&lt;br /&gt;
&lt;br /&gt;
(Development-board.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| At the heart of the '''mainboard''' is '''ATMega16 microcontroller.''' &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;| The '''microcontroller''' has 4 ports namely '''PORTA, PORTB, PORTC''' and '''PORTD'''. &lt;br /&gt;
&lt;br /&gt;
These '''ports''' may be configured to use as a '''digital input''' or '''digital output''' as desired.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| portA.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''Port A''' can be accessed from pin 0 to 7 through this section as labelled.&lt;br /&gt;
&lt;br /&gt;
'''Port A''' can also be configured as '''analog inputs'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight 4 pins beside port A&lt;br /&gt;
&lt;br /&gt;
(portA.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The 4 pins marked doesn’t belong to '''Port A'''. &lt;br /&gt;
&lt;br /&gt;
They are '''output power pins''' as described before.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| portB.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''Port B''' can be accessed from pin 0 to 7 through this section as labelled.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| portC.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Similarly, '''PORT C''' &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| portD.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| And '''PORT D'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight female, male berg connectors and screw terminals(separately)&lt;br /&gt;
&lt;br /&gt;
(portD.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can connect external '''inputs''' or '''outputs''' to the '''board''' in either of the 3 ways:&lt;br /&gt;
&lt;br /&gt;
* '''Female berg''' connectors or&lt;br /&gt;
* '''Male berg''' connectors &lt;br /&gt;
* '''Screw terminals'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| reset.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can reset the program in the '''microcontroller''' using the '''RESET''' button.&lt;br /&gt;
&lt;br /&gt;
Pressing the '''RESET''' button will only reset the state of '''program variables'''.&lt;br /&gt;
&lt;br /&gt;
It will not erase the program from the '''microcontroller'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| ISP-header.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This is a standard '''ISP header''' to program the '''microcontroller'''.&lt;br /&gt;
&lt;br /&gt;
We can connect an external '''programmer''' to this header and program the '''controller'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| ISP-connection1.jpg&lt;br /&gt;
&lt;br /&gt;
ISP-connection2.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To connect the header, simply match the notch on the '''ISP''' cable with the groove in the header as shown.&lt;br /&gt;
&lt;br /&gt;
The programmer shown in this tutorial is an '''USBasp programmer'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| UART.png&lt;br /&gt;
&lt;br /&gt;
(Highlight UART pins with red box)&lt;br /&gt;
&lt;br /&gt;
Highlight status LEDs &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The '''UART''' pins along with '''5V''' and '''GND''' are provided to attach an external '''UART module'''.&lt;br /&gt;
&lt;br /&gt;
The pin arrangements are shown in the picture.&lt;br /&gt;
&lt;br /&gt;
There are two '''status LEDs''' near the header to notify '''communication status'''.&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;
Points to remember:&lt;br /&gt;
&lt;br /&gt;
* Most of the '''modules''' developed by '''FOSSEE''' run on 12 volts&lt;br /&gt;
* 24 volt connection is also provided &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Points to remember:&lt;br /&gt;
&lt;br /&gt;
* Almost all the '''modules''' developed by '''FOSSEE''' are designed to work with 12 volts.&lt;br /&gt;
* But since most '''PLC modules''' operate on 24 volts, we are providing an option to access '''24V''' on '''board'''.&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 6: &lt;br /&gt;
&lt;br /&gt;
Summary&lt;br /&gt;
&lt;br /&gt;
In this tutorial, we learnt about &lt;br /&gt;
&lt;br /&gt;
* Various components on''' OpenPLC Mainboard'''&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Summary:&lt;br /&gt;
&lt;br /&gt;
In this tutorial, we learnt about &lt;br /&gt;
&lt;br /&gt;
* Various components of '''OpenPLC Mainboard'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 7:&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 8:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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 9:&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 10:&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 11:&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 12:&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/OpenPLC-Mainboard/English</id>
		<title>OpenPLC-with-LDmicro/C2/OpenPLC-Mainboard/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/OpenPLC-Mainboard/English"/>
				<updated>2021-06-18T13:30:50Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: &lt;/p&gt;
&lt;hr /&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;
Welcome Slide&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Welcome to the spoken tutorial on '''OpenPLC Main board'''.&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;
* Various Components on''' OpenPLC Main board'''&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will learn about&lt;br /&gt;
&lt;br /&gt;
* Various components of''' OpenPLC Main board'''&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;
* OpenPLC Main board&lt;br /&gt;
* 24V, 2A SMPS&lt;br /&gt;
* USBasp programmer&lt;br /&gt;
* Ubuntu Linux 18.04 operating system&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;
* '''OpenPLC Main board'''&lt;br /&gt;
* 24V, 2A '''SMPS'''&lt;br /&gt;
* '''USBasp''' programmer&lt;br /&gt;
* '''Ubuntu Linux 18.04''' operating system&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 4:&lt;br /&gt;
&lt;br /&gt;
OpenPLC hardware&lt;br /&gt;
&lt;br /&gt;
* Affordable, open source and modular hardware&lt;br /&gt;
* Flexible and can be interfaced with any electronic module&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
* '''OpenPLC''' is an affordable, open source &amp;amp; modular hardware developed at '''IIT Bombay''' by '''FOSSEE''' team.&lt;br /&gt;
* This '''board''' is flexible and can be interfaced with any '''electronic module''' available in the market.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Development-board.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This is a picture of '''OpenPLC  Main board.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| power-unit.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This highlighted section is the '''power unit''' of the '''board'''.&lt;br /&gt;
&lt;br /&gt;
It is further subdivided into '''input''' and '''output power sections'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Input Power Section:&lt;br /&gt;
&lt;br /&gt;
input-power-unit.png&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will now take a look at the '''input power section''' of the '''board'''.&lt;br /&gt;
&lt;br /&gt;
The '''board''' must be powered using 24 volt '''DC''' power supply.&lt;br /&gt;
&lt;br /&gt;
The 24 volt and 12 volt connections are capable of handling upto 2 amperes of current.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight input power screw terminals&lt;br /&gt;
&lt;br /&gt;
(input-power-unit.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The on '''board 24V input power terminals''' are shown on your screen marked '''GND '''which is '''ground''', and '''24V'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| SMPS.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We are using a 24V, 2A '''SMPS''' for power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight L, N, GND&lt;br /&gt;
&lt;br /&gt;
(SMPS-front.jpg)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We have to '''connect line, neutral''' and '''ground terminals''' of 3-pin '''AC''' power cord to '''SMPS'''.&lt;br /&gt;
&lt;br /&gt;
Make sure that you identify the '''terminals''' of 3-pin '''AC''' power cord correctly.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight -V, +V&lt;br /&gt;
&lt;br /&gt;
(input-power-connections.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect the '''+V''' and '''-V''' ends of the '''SMPS''' to '''24V''' and '''GND''' of the main '''board''' as shown here.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| wrong-connection.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| While making connections, make sure that exposed metal from the wire is not protruding out.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| wrong-connection.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This is a wrong way to connect a wire.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| wrong-connection.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We should not connect the wires in this fashion as this may cause electrical shorts later on.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| correct-connection.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This is a right way to connect a wire.&lt;br /&gt;
&lt;br /&gt;
Tighten the screws properly. &lt;br /&gt;
&lt;br /&gt;
Tug the wire moderately to ensure that they are secured in place.&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;| After making all the connections properly, turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| D2-glow.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Make sure that the '''D2 LED''' is glowing on your '''board''' which indicates that the '''board''' is powered up.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Output power section:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;lt;output-power-pins.png with labels&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will now take a look at the '''output power''' section.&lt;br /&gt;
&lt;br /&gt;
'''24, 12, 5 V''' and '''Ground outputs''' are provided for connections with '''external modules.'''&lt;br /&gt;
&lt;br /&gt;
The connections are provided through 4 different types of '''connectors'''. They are:&lt;br /&gt;
&lt;br /&gt;
* '''Relimate'''&lt;br /&gt;
* '''Male berg strip'''&lt;br /&gt;
* '''Female berg strip'''&lt;br /&gt;
* '''Screw terminal'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight relimate connectors&lt;br /&gt;
&lt;br /&gt;
(output-power-pins.png)&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| There are 4 '''relimate connectors''' on the '''board''' as marked in the picture.&lt;br /&gt;
&lt;br /&gt;
Most of the '''modules''' developed by''' FOSSEE '''will be compatible with these '''connectors'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight relimate connectors&lt;br /&gt;
&lt;br /&gt;
(output-power-pins.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| These will be easier to access with multi strand cables, if you do not have single strand cables.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight female and male connectors&lt;br /&gt;
&lt;br /&gt;
output-power-pins.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Some '''external modules''' in the market are available with either '''male''' or '''female berg''' connections.&lt;br /&gt;
&lt;br /&gt;
In order to accommodate both types of '''modules''', we have '''male''' as well as '''female''' connectors.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight microcontroller&lt;br /&gt;
&lt;br /&gt;
(Development-board.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| At the heart of the main '''board''' is '''ATMega16 microcontroller.''' &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;| The '''microcontroller''' has 4 ports namely '''PORTA, PORTB, PORTC''' and '''PORTD'''. &lt;br /&gt;
&lt;br /&gt;
These '''ports''' may be configured to use as a '''digital input''' or '''digital output''' as desired.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| portA.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''Port A''' can be accessed from pin 0 to 7 through this section as labelled.&lt;br /&gt;
&lt;br /&gt;
'''Port A''' can also be configured as '''analog inputs'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight 4 pins beside port A&lt;br /&gt;
&lt;br /&gt;
(portA.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The 4 pins marked doesn’t belong to '''Port A'''. &lt;br /&gt;
&lt;br /&gt;
They are '''output power pins''' as described before.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| portB.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''Port B''' can be accessed from pin 0 to 7 through this section as labelled.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| portC.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Similarly, '''PORT C''' &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| portD.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| And '''PORT D'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight female, male berg connectors and screw terminals(separately)&lt;br /&gt;
&lt;br /&gt;
(portD.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can connect external '''inputs''' or '''outputs''' to the '''board''' in either of the 3 ways:&lt;br /&gt;
&lt;br /&gt;
* '''Female berg''' connectors or&lt;br /&gt;
* '''Male berg''' connectors &lt;br /&gt;
* '''Screw terminals'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| reset.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can reset the program in the '''microcontroller''' using the '''RESET''' button.&lt;br /&gt;
&lt;br /&gt;
Pressing the '''RESET''' button will only reset the state of '''program variables'''.&lt;br /&gt;
&lt;br /&gt;
It will not erase the program from the '''microcontroller'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| ISP-header.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This is a standard '''ISP header''' to program the '''microcontroller'''.&lt;br /&gt;
&lt;br /&gt;
We can connect an external '''programmer''' to this header and program the '''controller'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| ISP-connection1.jpg&lt;br /&gt;
&lt;br /&gt;
ISP-connection2.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To connect the header, simply match the notch on the '''ISP''' cable with the groove in the header as shown.&lt;br /&gt;
&lt;br /&gt;
The programmer shown in this tutorial is an '''USBasp programmer'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| UART.png&lt;br /&gt;
&lt;br /&gt;
(Highlight UART pins with red box)&lt;br /&gt;
&lt;br /&gt;
Highlight status LEDs &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The '''UART''' pins along with '''5V''' and '''GND''' are provided to attach an external '''UART module'''.&lt;br /&gt;
&lt;br /&gt;
The pin arrangements are shown in the picture.&lt;br /&gt;
&lt;br /&gt;
There are two '''status LEDs''' near the header to notify '''communication status'''.&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;
Points to remember:&lt;br /&gt;
&lt;br /&gt;
* Most of the '''modules''' developed by '''FOSSEE''' run on 12 volts&lt;br /&gt;
* 24 volt connection is also provided &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Points to remember:&lt;br /&gt;
&lt;br /&gt;
* Almost all the '''modules''' developed by '''FOSSEE''' are designed to work with 12 volts.&lt;br /&gt;
* But since most '''PLC modules''' operate on 24 volts, we are providing an option to access '''24V''' on '''board'''.&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 6: &lt;br /&gt;
&lt;br /&gt;
Summary&lt;br /&gt;
&lt;br /&gt;
In this tutorial, we learnt about &lt;br /&gt;
&lt;br /&gt;
* Various components on''' OpenPLC Main board'''&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Summary:&lt;br /&gt;
&lt;br /&gt;
In this tutorial, we learnt about &lt;br /&gt;
&lt;br /&gt;
* Various components of '''OpenPLC Main board'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 7:&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 8:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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 9:&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 10:&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 11:&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 12:&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/Simulation-and-Compilation/English</id>
		<title>OpenPLC-with-LDmicro/C2/Simulation-and-Compilation/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/Simulation-and-Compilation/English"/>
				<updated>2021-06-18T13:29:55Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: &lt;/p&gt;
&lt;hr /&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;
Welcome Slide&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;
&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'''’ 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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/Introduction-to-LDmicro/English</id>
		<title>OpenPLC-with-LDmicro/C2/Introduction-to-LDmicro/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/Introduction-to-LDmicro/English"/>
				<updated>2021-06-18T13:29:01Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: &lt;/p&gt;
&lt;hr /&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;
Welcome Slide&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Welcome to the spoken tutorial on '''Introduction to 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;
* Explore LDmicro interface&lt;br /&gt;
* Create a simple ladder logic &lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will &lt;br /&gt;
&lt;br /&gt;
* Explore '''LDmicro''' interface and &lt;br /&gt;
* Create a simple '''ladder logic'''&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 and&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 4:&lt;br /&gt;
&lt;br /&gt;
Pre-requisites &lt;br /&gt;
&lt;br /&gt;
* LDmicro should have installed on your system&lt;br /&gt;
* If not, please refer to the relevant LDMicro tutorials on this website&lt;br /&gt;
&lt;br /&gt;
https://spoken-tutorial.org&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To follow this tutorial, you should have '''LDmicro''' installed on your system.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If not, please refer to the relevant '''LDmicro''' tutorials on this website.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type LDmicro&lt;br /&gt;
&lt;br /&gt;
Click on LDmicro icon&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us launch the ‘'''LDmicro'''’ interface in '''Linux'''.&lt;br /&gt;
&lt;br /&gt;
Go to the '''unity search bar''' and type ‘'''LDmicro'''’. &lt;br /&gt;
&lt;br /&gt;
Double-click on the ‘'''LDmicro'''’ icon.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open terminal&lt;br /&gt;
&lt;br /&gt;
Type ldmicro&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| You can also launch '''LDmciro''' through '''terminal'''.&lt;br /&gt;
&lt;br /&gt;
Open the '''terminal''' by pressing '''Ctrl + Alt + T''' keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
Type '''ldmicro'''.&lt;br /&gt;
&lt;br /&gt;
Note that all the letters in '''LDmicro''' are smallcase.&lt;br /&gt;
&lt;br /&gt;
Press '''ENTER.'''&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;| '''Windows''' users can launch it by double-clicking the executable file.&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 can see '''Program editor '''window opens.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point rungs&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The horizontal lines in which we write our '''ladder''' diagram are called '''rungs'''.&lt;br /&gt;
&lt;br /&gt;
The '''rung''' with '''‘END’''' instruction denotes the end of the '''ladder''' diagram.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point rails&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The two vertical lines at the start and end of each '''rung''' are called '''Rails'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point left rail&lt;br /&gt;
&lt;br /&gt;
Point right rail&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The left '''rail''' is connected to '''Positive''', and the right '''rail''' is connected to '''Ground'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Show the direction of current flow&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Thus, the current flows from left '''rail''' to right '''rail'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight ‘Instructions’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, we’ll see about instructions &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 4:&lt;br /&gt;
&lt;br /&gt;
Instructions&lt;br /&gt;
&lt;br /&gt;
* Mainly two types, '''Input''' and '''Output''' instructions&lt;br /&gt;
* Output instructions are always the last instruction in a rung &lt;br /&gt;
* Minimum of one output instruction in a rung&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
* In''' ladder logic''', we categorize instructions mainly as '''input''' and '''output''' instructions.&lt;br /&gt;
* '''Output''' instructions are always the last instruction in a '''rung'''&lt;br /&gt;
* Every '''rung''' must have a minimum of one '''output''' 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 we will learn how to place instructions in '''LDmicro'''.&lt;br /&gt;
&lt;br /&gt;
|-&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;
Click on ‘Instructions’ and highlight the elements&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch back to '''LDmicro''' interface.&lt;br /&gt;
&lt;br /&gt;
In the top menu bar, click on '''Instructions'''.&lt;br /&gt;
&lt;br /&gt;
There are many elements available under '''Instructions'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point cursor&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Every instruction is placed at the current cursor position.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Instruction &amp;gt;&amp;gt; Insert Contact&lt;br /&gt;
&lt;br /&gt;
Highlight the Keyboard shortcuts&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will first place a '''contact''' by clicking on '''Instructions -&amp;gt; Insert Contacts.'''&lt;br /&gt;
&lt;br /&gt;
The letter ‘C’ in the '''Insert Contacts menu '''represents the keyboard shortcut.&lt;br /&gt;
&lt;br /&gt;
You can either use the menu or the shortcut keys to place the instruction.&lt;br /&gt;
&lt;br /&gt;
We can see that the cursor is blinking before the new '''Contact'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to Xnew&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can now see that the contact is inserted at the current cursor position. &lt;br /&gt;
&lt;br /&gt;
It is named as '''Xnew''' by default.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can see an '''Input Output''' list at the bottom of the window.&lt;br /&gt;
&lt;br /&gt;
All the '''variables''' used in the program will be displayed in this''' I/O list.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to the icon and show the tooltip&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Below the menu bar, you can see a toolbar with icons which are frequently used.&lt;br /&gt;
&lt;br /&gt;
For example, the first icon is '''‘Normal contact’'''. &lt;br /&gt;
&lt;br /&gt;
You can use this tool bar as well to place instructions.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Demo of cursor position&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Next we will place a '''coil'''.&lt;br /&gt;
&lt;br /&gt;
For that, place the cursor to the right end of the '''contact'''.&lt;br /&gt;
&lt;br /&gt;
This can be done by clicking with the mouse pointer at the appropriate position.&lt;br /&gt;
&lt;br /&gt;
Otherwise with the help of arrow keys you can change the cursor position.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| click on '''Instructions-&amp;gt;Insert Coil'''&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In the menu bar, click on '''Instructions-&amp;gt;Insert Coil'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight Contact and Coil&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe that the '''contact''' appears red whereas '''coil''' in white.&lt;br /&gt;
&lt;br /&gt;
This is because an instruction gets highlighted when cursor is placed near it.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the coil and right power rail&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Here, the '''coil''' is placed automatically at the extreme right of the '''rung.'''&lt;br /&gt;
&lt;br /&gt;
This is because it is an '''output''' instruction.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor on the right side of the coil&lt;br /&gt;
&lt;br /&gt;
Click on ‘Instructions’&lt;br /&gt;
&lt;br /&gt;
HIghlight Instructions list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Try placing an instruction to the right of the '''Coil'''.&lt;br /&gt;
&lt;br /&gt;
Place the cursor to the right of the '''coil'''.&lt;br /&gt;
&lt;br /&gt;
Click on '''‘Instructions’.'''&lt;br /&gt;
&lt;br /&gt;
We can see that no instruction is enabled.&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, no other instruction can be placed at the right of an '''output''' instruction.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor on the right side of the coil&lt;br /&gt;
&lt;br /&gt;
Click on ‘Instructions’&lt;br /&gt;
&lt;br /&gt;
Highlight ‘Insert Contact’&lt;br /&gt;
&lt;br /&gt;
Highlight ‘Insert Coil’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| If we move the cursor to the left of the '''coil''', we can place another '''contact.'''&lt;br /&gt;
&lt;br /&gt;
But we cannot place a '''coil'''.&lt;br /&gt;
&lt;br /&gt;
Place the cursor to the left of the '''coil.'''&lt;br /&gt;
&lt;br /&gt;
Click on '''Instructions.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the instructions which are disabled&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe few instructions are disabled.&lt;br /&gt;
&lt;br /&gt;
These are '''output''' instructions.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight instructions on Instructions list except ‘Insert Contact’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''Contact''' is an example of an '''input''' instruction.&lt;br /&gt;
&lt;br /&gt;
There are many such '''input''' instructions.&lt;br /&gt;
&lt;br /&gt;
We will learn about different instructions and their behavior later in this series.&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 can even add multiple '''input''' and '''output''' instructions in a single '''rung'''.&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;
Multiple inputs and Multiple outputs&lt;br /&gt;
&lt;br /&gt;
* Multiple '''inputs''' can be connected either in series or in parallel.&lt;br /&gt;
* Multiple '''outputs''' in series is not preferred.&lt;br /&gt;
* We can add multiple '''outputs''' in parallel.&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
* Multiple '''inputs''' can be connected either in series or in parallel.&lt;br /&gt;
* Whereas, multiple '''outputs''' in series is not preferred.&lt;br /&gt;
* However, we can add multiple '''outputs''' in parallel.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch back to LDmicro&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;| Place the cursor below the ‘switch’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| First, we will see how to place '''input''' instructions in parallel.&lt;br /&gt;
&lt;br /&gt;
Place the cursor below the '''contact.'''&lt;br /&gt;
&lt;br /&gt;
We can see the cursor blinking horizontally.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click Instruction &amp;gt;&amp;gt; Insert Contacts&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a '''Contact''' by clicking '''Normal Contact''' icon.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor to the right of the first contact&lt;br /&gt;
&lt;br /&gt;
Click ‘Normal Contact’ icon&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, we will see how to place '''input''' instructions in series.&lt;br /&gt;
&lt;br /&gt;
We can add another '''contact''' in series to the first '''contact'''.&lt;br /&gt;
&lt;br /&gt;
Place the cursor to the right of the first '''contact'''.&lt;br /&gt;
&lt;br /&gt;
Now, we can see the cursor blinking vertically.&lt;br /&gt;
&lt;br /&gt;
Insert '''Contact''' as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor below the coil&lt;br /&gt;
&lt;br /&gt;
Click on ‘Normal Coil’ icon&lt;br /&gt;
&lt;br /&gt;
Highlight both the coils in parallel&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Similarly, we can add '''Coils''' in parallel as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place cursor to the left of the '''coil''' in the first '''rung'''.&lt;br /&gt;
&lt;br /&gt;
Click on ‘'''Instructions'''’&lt;br /&gt;
&lt;br /&gt;
Point ‘Insert Coil’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us try to add two '''coils''' in series.&lt;br /&gt;
&lt;br /&gt;
Place the cursor to the left of the '''coil''' in the first '''rung'''. &lt;br /&gt;
&lt;br /&gt;
Click on '''Instructions'''.&lt;br /&gt;
&lt;br /&gt;
Notice that we are unable to add '''coils''' in series.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight ‘Edit’ in the top menu bar&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can also delete a particular instruction or an entire '''rung'''.&lt;br /&gt;
&lt;br /&gt;
Now let us see how to delete.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Select the Contact in series with ‘switch’&lt;br /&gt;
&lt;br /&gt;
Click ‘Edit &amp;gt;&amp;gt; Delete Selected Rung’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Select the newly added '''contact''' which is in series with the first '''contact'''.&lt;br /&gt;
&lt;br /&gt;
In the menu bar, click on ‘'''Edit'''’ &lt;br /&gt;
&lt;br /&gt;
Click ‘'''Delete Selected element'''’&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Select the Contact in parallel with ‘switch’&lt;br /&gt;
&lt;br /&gt;
Click ‘Edit &amp;gt;&amp;gt; Delete Selected Rung’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Similarly, delete the '''contact''' in parallel to the first '''contact'''.&lt;br /&gt;
&lt;br /&gt;
And '''coil''' parallel to the first '''coil'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click ‘Edit &amp;gt;&amp;gt; Insert Rung after’&lt;br /&gt;
&lt;br /&gt;
Highlight ‘Insert Rung Before’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, we’ll add a new '''rung'''.&lt;br /&gt;
&lt;br /&gt;
Click on '''‘Edit’.''' &lt;br /&gt;
&lt;br /&gt;
We can see options such as '''Insert Rung after, Insert Rung Before'''.&lt;br /&gt;
&lt;br /&gt;
I’ll select''' Insert Rung after'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor on the new rung&lt;br /&gt;
&lt;br /&gt;
Click ‘instructions &amp;gt;&amp;gt; Insert Coil’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now insert a '''coil''' in the newly added '''rung''' 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;| Now, we’ll see how to change the default names of these instructions.&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 contact&lt;br /&gt;
&lt;br /&gt;
Change the name to ‘switch’&lt;br /&gt;
&lt;br /&gt;
Highlight the other options i.e ‘Input pin’ etc.&lt;br /&gt;
&lt;br /&gt;
Click OK&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on the '''contact.'''&lt;br /&gt;
&lt;br /&gt;
A dialog box opens.&lt;br /&gt;
&lt;br /&gt;
Change its name in the '''Name''' textbox to ‘'''switch'''’.&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;| Double-click on the Coil&lt;br /&gt;
&lt;br /&gt;
Change the name to ‘LED1’&lt;br /&gt;
&lt;br /&gt;
Click OK&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Similarly, change the name of the '''coil''' in first '''rung''' to '''LED1'''.&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 Coil&lt;br /&gt;
&lt;br /&gt;
Change the name to ‘LED2’&lt;br /&gt;
&lt;br /&gt;
Click OK&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Change the name of the '''coil''' in second '''rung''' to '''LED2'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the ‘YLED1’ in I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The reflected names will appear in the '''I/O list'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to X and Y&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can notice an '''X''' prefixed before the name of the '''Contact''' and '''Y''' for '''Coil'''.&lt;br /&gt;
&lt;br /&gt;
The first letter is prefixed for some instructions by default.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click ‘Help’ &amp;gt;&amp;gt; Click ‘Manual’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us see the manual of '''LDmicro''' for prefixed naming convention.&lt;br /&gt;
&lt;br /&gt;
In the menu bar, click on '''Help''' and then '''Manual'''. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the prefixes list.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Scroll down.&lt;br /&gt;
&lt;br /&gt;
Under ‘'''BASICS'''’ we can find the list.&lt;br /&gt;
&lt;br /&gt;
These are the prefixes if we create a '''variable''' called '''‘name’.'''&lt;br /&gt;
&lt;br /&gt;
The prefixed letter indicates what kind of '''object''' it is.&lt;br /&gt;
&lt;br /&gt;
Close the manual.&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; Save’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us save the file.&lt;br /&gt;
&lt;br /&gt;
Click on '''File''' and then '''‘Save’'''.&lt;br /&gt;
&lt;br /&gt;
'''Save''' pop up window appears.&lt;br /&gt;
&lt;br /&gt;
The '''ladder logic''' files are saved with the extension '''.ld'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type sample.ld&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| I’ll save it as '''sample.ld''' in ‘'''LDmicro'''’ folder on the '''Desktop.''' &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 8:Summary&lt;br /&gt;
&lt;br /&gt;
* Explore LDmicro interface&lt;br /&gt;
* Create a simple ladder logic&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;
* Explore '''LDmicro''' interface&lt;br /&gt;
* Create a simple '''ladder logic''' &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;
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 10:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops and&lt;br /&gt;
* gives certificates on passing online tests.&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 11:&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;| 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 12:&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 13:&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 14:&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/Installation-of-LDmicro-on-Windows/English</id>
		<title>OpenPLC-with-LDmicro/C2/Installation-of-LDmicro-on-Windows/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/Installation-of-LDmicro-on-Windows/English"/>
				<updated>2021-06-18T13:27:34Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|| '''VISUAL CUE'''&lt;br /&gt;
|| '''NARRATION'''&lt;br /&gt;
|-&lt;br /&gt;
||  Slide 1:&lt;br /&gt;
&lt;br /&gt;
Welcome slide&lt;br /&gt;
|| Welcome to the spoken tutorial on '''Installation of LDmicro on Windows.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 2: &lt;br /&gt;
Learning Objectives&lt;br /&gt;
&lt;br /&gt;
|| In this tutorial, we will see how to install,&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''AVRDUDE'''&lt;br /&gt;
* '''Drivers''' for '''USBasp programmer'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 3:&lt;br /&gt;
&lt;br /&gt;
System Requirements&lt;br /&gt;
|| To record this tutorial I am using:&lt;br /&gt;
* '''Windows 8''' operating system&lt;br /&gt;
* '''USBasp programmer'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Now, we’ll see how to install '''LDmicro.'''&lt;br /&gt;
|- &lt;br /&gt;
|| OpenPLC website&lt;br /&gt;
&lt;br /&gt;
|| To download the '''installation files,''' open a '''web browser''' of your choice.&lt;br /&gt;
&lt;br /&gt;
Make sure you have an active '''internet connection'''.&lt;br /&gt;
&lt;br /&gt;
Go to the '''website''' [https://openplc.fossee.in/ https://openplc.fossee.in]&lt;br /&gt;
|- &lt;br /&gt;
|| OpenPLC website&lt;br /&gt;
|| In the top '''menu bar''', click on '''Downloads''' tab.&lt;br /&gt;
|- &lt;br /&gt;
|| OpenPLC website&lt;br /&gt;
&lt;br /&gt;
|| Here we will find a '''link''' to download '''LDmicro installation files''' for '''Windows'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Click LDmicro for Windows&lt;br /&gt;
|| Click on '''‘LDmicro for Windows’ link'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Point .exe file&lt;br /&gt;
|| In the '''Downloads '''folder, downloaded '''.exe file''' is available.&lt;br /&gt;
|- &lt;br /&gt;
|| Double-click on the .exe file&lt;br /&gt;
|| Double-click on the '''.exe file.'''&lt;br /&gt;
&lt;br /&gt;
We will get a warning message as:&lt;br /&gt;
&lt;br /&gt;
'''‘Windows SmartScreen prevented an unrecognized app from starting’'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘More info’ &amp;gt;&amp;gt; Click ‘Run anyway’&lt;br /&gt;
|| Click on '''‘More info’.'''&lt;br /&gt;
&lt;br /&gt;
Then, click on '''‘Run anyway’ '''button.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| This will open the '''LDmicro-Program Editor''' window.&lt;br /&gt;
&lt;br /&gt;
Thus, we’ve successfully installed '''LDmicro'''.&lt;br /&gt;
&lt;br /&gt;
Close the window.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Next, we’ll see how to '''install AVRDUDE'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 4:&lt;br /&gt;
&lt;br /&gt;
What is AVRDUDE?&lt;br /&gt;
|| What is '''AVRDUDE'''?&lt;br /&gt;
&lt;br /&gt;
'''AVRDUDE '''stands for '''AVR Downloader Uploader'''.&lt;br /&gt;
&lt;br /&gt;
It is a tool for downloading or uploading the on-'''chip memories''' of '''AVR microcontrollers'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Now we will see the '''installation''' of '''AVRDUDE.'''&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Switch back to the '''browser'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Point Windows row&lt;br /&gt;
&lt;br /&gt;
Point ‘WinAVR (avrdude)’ link&lt;br /&gt;
|| In the''' Downloads''' page, in''' Windows''' row, click on '''WinAVR (avrdude).'''&lt;br /&gt;
|- &lt;br /&gt;
|| Click WinAVR (avrdude)&lt;br /&gt;
|| It will redirect to '''sourceforge.net website'''. &lt;br /&gt;
|- &lt;br /&gt;
|| Click on ‘Files’&lt;br /&gt;
|| Click on the ‘'''Files'''’ tab.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘WinAVR’&lt;br /&gt;
|| Click on ‘'''WinAVR'''’ folder.&lt;br /&gt;
&lt;br /&gt;
We can see a list of folders for different versions of '''AVRDUDE.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘20100110’&lt;br /&gt;
|| Click on the first folder available in the list, which indicates the latest version.&lt;br /&gt;
&lt;br /&gt;
In my case, it is '''‘20100110‘'''. &lt;br /&gt;
|- &lt;br /&gt;
|| Click WinAVR-20100110-install.exe&lt;br /&gt;
&lt;br /&gt;
|| Then, click on '''WinAVR-20100110-install.exe.'''&lt;br /&gt;
&lt;br /&gt;
This will download the '''executable file''' for '''AVRDUDE.'''&lt;br /&gt;
&lt;br /&gt;
It will take some time to download the '''file'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Point .exe file&lt;br /&gt;
|| In the '''Downloads''' folder, the downloaded '''.exe file''' is available&lt;br /&gt;
|- &lt;br /&gt;
|| Right click on the '''.exe file'''. &lt;br /&gt;
&lt;br /&gt;
Click on ‘Run as administrator’&lt;br /&gt;
|| Right click on it and select ‘'''Run as Administrator'''’.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘Yes’&lt;br /&gt;
|| A window will pop-up asking permission to '''install'''.&lt;br /&gt;
&lt;br /&gt;
Click on ‘'''Yes'''’ button.&lt;br /&gt;
|- &lt;br /&gt;
|| Select ‘English’ &amp;gt;&amp;gt; Click ‘OK’ &amp;gt;&amp;gt; Click ‘Next’ &amp;gt;&amp;gt; Click ‘I Agree’&lt;br /&gt;
|| Then another window pops up asking to select a language.&lt;br /&gt;
&lt;br /&gt;
Select '''English''' and then click ‘'''OK'''’ button.&lt;br /&gt;
&lt;br /&gt;
Click ‘'''Next'''’ in the '''Setup Wizard''' window.&lt;br /&gt;
&lt;br /&gt;
Click ‘'''I agree'''’ in the '''License Agreement''' window.&lt;br /&gt;
|- &lt;br /&gt;
|| Browse the location&lt;br /&gt;
|| Browse to the location where you would want to '''install''' the '''software'''.&lt;br /&gt;
&lt;br /&gt;
I’ll install it on '''Desktop'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘Next’ &amp;gt;&amp;gt; Click ‘Install’&lt;br /&gt;
|| Click on ‘'''Next'''’ button.&lt;br /&gt;
&lt;br /&gt;
Click on ‘'''Install'''’ button.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘Finish’&lt;br /&gt;
|| It will take some time to '''install''' the '''software'''&lt;br /&gt;
&lt;br /&gt;
After completion, click on ‘'''Finish'''’ button.&lt;br /&gt;
|- &lt;br /&gt;
|| Open Windows search&lt;br /&gt;
|| To make sure it is installed, open '''command prompt''' using '''Windows search.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Type '''‘avrdude'''’&lt;br /&gt;
&lt;br /&gt;
Point the version number&lt;br /&gt;
|| Type ‘'''avrdude'''’ and press '''ENTER.'''&lt;br /&gt;
&lt;br /&gt;
We can see the version of''' AVRDUDE installed''' on the machine.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Next, we will see about '''USBasp programmer.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 5:&lt;br /&gt;
&lt;br /&gt;
(picture of USBasp programmer, '''USBasp_Programmer.jpg''')&lt;br /&gt;
|| &lt;br /&gt;
&lt;br /&gt;
This is a picture of a '''USBasp programmer'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 6:&lt;br /&gt;
&lt;br /&gt;
Why USBasp drivers?&lt;br /&gt;
|| Why '''USBasp drivers'''?&lt;br /&gt;
*A '''USBasp programmer''' is used to '''program''' the '''controller''' on '''OpenPLC Mainboard'''.&lt;br /&gt;
* '''AVRDUDE''' will not recognize the '''USBasp''', if '''drivers''' are not '''installed'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Now, we’ll see how to install the '''USBasp driver'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Switch back to the '''browser'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| I’m using '''Windows 8 OS''' to do the '''installation'''.&lt;br /&gt;
&lt;br /&gt;
The procedure is the same for '''Windows 10 '''also.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| First, we need to download the '''installation files.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘USBasp drivers’ link&lt;br /&gt;
&lt;br /&gt;
Text box: These installation files are for both Windows 8 and Windows 10&lt;br /&gt;
&lt;br /&gt;
|| In the '''Windows''' row, click on ‘'''USBasp drivers’ link''' to download them.&lt;br /&gt;
|- &lt;br /&gt;
|| Point the .zip file&lt;br /&gt;
|| In the '''Downloads''' folder, we can see a '''.zip file''' of '''USBasp drivers'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Right click &amp;gt;&amp;gt; Click ‘Extract All’&lt;br /&gt;
|| Right click on it and select ‘'''Extract All'''’.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘Extract’&lt;br /&gt;
|| Browse to the location where you want to extract and click ‘'''Extract'''’.&lt;br /&gt;
&lt;br /&gt;
I’ll extract to the '''Downloads''' folder.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Connect the '''USBasp programmer''' to one of the '''USB ports''' of your PC.&lt;br /&gt;
|- &lt;br /&gt;
|| Open Windows search&lt;br /&gt;
|| Now, open '''Windows search'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Type ‘Device Manager’ &lt;br /&gt;
&lt;br /&gt;
Press ENTER&lt;br /&gt;
|| Search for ‘'''Device Manager'''’.&lt;br /&gt;
&lt;br /&gt;
In '''Windows 8''', we can find '''‘Device Manager’''' under '''Settings '''&lt;br /&gt;
&lt;br /&gt;
Click on '''Device Manager.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘Other Devices’&lt;br /&gt;
&lt;br /&gt;
Point ‘USBasp’&lt;br /&gt;
|| Click on ‘'''Other devices'''’.&lt;br /&gt;
&lt;br /&gt;
We can see ‘'''USBasp'''’.&lt;br /&gt;
|- &lt;br /&gt;
|| Point yellow sign&lt;br /&gt;
|| The yellow sign near '''USBasp''' indicates that it’s not connected.&lt;br /&gt;
|- &lt;br /&gt;
|| Right click on ‘USBasp’ &amp;gt;&amp;gt; Click ‘Update Driver Software’&lt;br /&gt;
|| Right click on it and select ‘'''Update Driver Software'''’.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| A window will pop up with ‘'''How do you want to search for driver software?’'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘Browse my computer for driver software’&lt;br /&gt;
|| Click ‘'''Browse my computer for driver software'''’.&lt;br /&gt;
|- &lt;br /&gt;
|| Browse to the location&lt;br /&gt;
&lt;br /&gt;
Click ‘Install’&lt;br /&gt;
|| Browse to the location where you have extracted the ‘'''USBasp drivers'''’ folder.&lt;br /&gt;
&lt;br /&gt;
I’ll change to '''Downloads.'''&lt;br /&gt;
&lt;br /&gt;
Click on '''Next''' button.&lt;br /&gt;
|- &lt;br /&gt;
|| Point the message&lt;br /&gt;
|| But, we can see a message as:&lt;br /&gt;
&lt;br /&gt;
‘'''Windows encountered a problem installing the driver software for your device’'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| This is because there is a '''driver''' restriction for '''non-digitally signed drivers.'''&lt;br /&gt;
&lt;br /&gt;
Only '''digitally signed drivers''' are allowed in '''Windows 8''' and '''Windows 10'''&lt;br /&gt;
&lt;br /&gt;
Therefore we have to disable the '''signature checking'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Press SHIFT and Restart &lt;br /&gt;
|| To do that, hold the '''Shift''' key and '''restart''' the computer.&lt;br /&gt;
&lt;br /&gt;
The computer will restart with some clicking options on the screen.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘troubleshoot’&lt;br /&gt;
|| Click on ‘'''Troubleshoot'''’ option.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘Advanced Options’&lt;br /&gt;
&lt;br /&gt;
Click ‘Startup Settings’&lt;br /&gt;
&lt;br /&gt;
|| Then click on ‘'''Advanced Options'''’.&lt;br /&gt;
&lt;br /&gt;
Click on ‘'''Startup Settings'''’.&lt;br /&gt;
&lt;br /&gt;
On '''Windows 10''', it might be on a second page, after &amp;quot;'''Show more settings'''&amp;quot;.&lt;br /&gt;
|- &lt;br /&gt;
|| Highlight the options&lt;br /&gt;
|| A new window opens with the message:&lt;br /&gt;
&lt;br /&gt;
‘'''after restart you will be able to change some windows options'''’.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘Restart’&lt;br /&gt;
|| Now simply click on the '''Restart''' button.&lt;br /&gt;
&lt;br /&gt;
When the computer '''reboots''' it will show some options on the screen.&lt;br /&gt;
|- &lt;br /&gt;
|| Press 7&lt;br /&gt;
|| Press '''7''' in the keyboard to select option 7, i.e. ‘'''Disable driver signature enforcement'''’.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| After that, the computer will start '''Windows''' normally but now with '''disabled driver signature detection'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Now again go to the ‘'''Device manager'''’ and try '''installing''' the '''driver''' as before.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| We’ll get a warning that says ‘'''Windows can’t verify the publisher of this driver software’'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘Install this driver software anyway’&lt;br /&gt;
|| Ignore it, and click on ‘'''Install this driver software anyway'''’.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| We can see a message ‘'''Windows has successfully updated your driver software’.'''&lt;br /&gt;
&lt;br /&gt;
Click on the '''Close''' button.&lt;br /&gt;
|- &lt;br /&gt;
|| Point ‘USBasp’ in ‘Other devices’&lt;br /&gt;
|| Now we can observe that the yellow sign at '''USBasp''' is not there.&lt;br /&gt;
&lt;br /&gt;
Thus, '''USBasp drivers''' are successfully '''installed''' and working.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| This brings us to the end of this tutorial. &lt;br /&gt;
&lt;br /&gt;
Let us summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 7: Summary&lt;br /&gt;
&lt;br /&gt;
We learnt to install&lt;br /&gt;
*LDmicro&lt;br /&gt;
*AVRDUDE&lt;br /&gt;
*Drivers for USBasp programmer&lt;br /&gt;
&lt;br /&gt;
|| In this tutorial, we learnt how to install&lt;br /&gt;
*'''LDmicro'''&lt;br /&gt;
*'''AVRDUDE'''&lt;br /&gt;
*'''drivers''' for '''USBasp programmer'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 8:&lt;br /&gt;
&lt;br /&gt;
About Spoken Tutorial project&lt;br /&gt;
|| &lt;br /&gt;
* The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
* Please download and watch it.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 9:&lt;br /&gt;
&lt;br /&gt;
Spoken Tutorial workshops&lt;br /&gt;
|| The''' Spoken Tutorial Project''' team:&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&lt;br /&gt;
&lt;br /&gt;
For more details, please write to us.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 10:&lt;br /&gt;
&lt;br /&gt;
Forum for specific questions:&lt;br /&gt;
|| &lt;br /&gt;
* Do you have questions in THIS Spoken Tutorial?&lt;br /&gt;
* Please visit this site&lt;br /&gt;
* Choose the minute and second where you have the question&lt;br /&gt;
* Explain your question briefly&lt;br /&gt;
* Someone from our team will answer them&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 11:&lt;br /&gt;
&lt;br /&gt;
Forum for specific questions:&lt;br /&gt;
|| Do you have 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;
|| Slide 12:&lt;br /&gt;
&lt;br /&gt;
Acknowledgment&lt;br /&gt;
|| Spoken Tutorial Project is funded by MHRD, Government of India.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 13:&lt;br /&gt;
&lt;br /&gt;
Thank you slide&lt;br /&gt;
|| 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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/Installation-of-LDmicro-on-Windows/English</id>
		<title>OpenPLC-with-LDmicro/C2/Installation-of-LDmicro-on-Windows/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/Installation-of-LDmicro-on-Windows/English"/>
				<updated>2021-06-18T13:27:24Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|| '''VISUAL CUE'''&lt;br /&gt;
|| '''NARRATION'''&lt;br /&gt;
|-&lt;br /&gt;
||  &lt;br /&gt;
&lt;br /&gt;
Welcome slide&lt;br /&gt;
|| Welcome to the spoken tutorial on '''Installation of LDmicro on Windows.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 2: &lt;br /&gt;
Learning Objectives&lt;br /&gt;
&lt;br /&gt;
|| In this tutorial, we will see how to install,&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''AVRDUDE'''&lt;br /&gt;
* '''Drivers''' for '''USBasp programmer'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 3:&lt;br /&gt;
&lt;br /&gt;
System Requirements&lt;br /&gt;
|| To record this tutorial I am using:&lt;br /&gt;
* '''Windows 8''' operating system&lt;br /&gt;
* '''USBasp programmer'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Now, we’ll see how to install '''LDmicro.'''&lt;br /&gt;
|- &lt;br /&gt;
|| OpenPLC website&lt;br /&gt;
&lt;br /&gt;
|| To download the '''installation files,''' open a '''web browser''' of your choice.&lt;br /&gt;
&lt;br /&gt;
Make sure you have an active '''internet connection'''.&lt;br /&gt;
&lt;br /&gt;
Go to the '''website''' [https://openplc.fossee.in/ https://openplc.fossee.in]&lt;br /&gt;
|- &lt;br /&gt;
|| OpenPLC website&lt;br /&gt;
|| In the top '''menu bar''', click on '''Downloads''' tab.&lt;br /&gt;
|- &lt;br /&gt;
|| OpenPLC website&lt;br /&gt;
&lt;br /&gt;
|| Here we will find a '''link''' to download '''LDmicro installation files''' for '''Windows'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Click LDmicro for Windows&lt;br /&gt;
|| Click on '''‘LDmicro for Windows’ link'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Point .exe file&lt;br /&gt;
|| In the '''Downloads '''folder, downloaded '''.exe file''' is available.&lt;br /&gt;
|- &lt;br /&gt;
|| Double-click on the .exe file&lt;br /&gt;
|| Double-click on the '''.exe file.'''&lt;br /&gt;
&lt;br /&gt;
We will get a warning message as:&lt;br /&gt;
&lt;br /&gt;
'''‘Windows SmartScreen prevented an unrecognized app from starting’'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘More info’ &amp;gt;&amp;gt; Click ‘Run anyway’&lt;br /&gt;
|| Click on '''‘More info’.'''&lt;br /&gt;
&lt;br /&gt;
Then, click on '''‘Run anyway’ '''button.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| This will open the '''LDmicro-Program Editor''' window.&lt;br /&gt;
&lt;br /&gt;
Thus, we’ve successfully installed '''LDmicro'''.&lt;br /&gt;
&lt;br /&gt;
Close the window.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Next, we’ll see how to '''install AVRDUDE'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 4:&lt;br /&gt;
&lt;br /&gt;
What is AVRDUDE?&lt;br /&gt;
|| What is '''AVRDUDE'''?&lt;br /&gt;
&lt;br /&gt;
'''AVRDUDE '''stands for '''AVR Downloader Uploader'''.&lt;br /&gt;
&lt;br /&gt;
It is a tool for downloading or uploading the on-'''chip memories''' of '''AVR microcontrollers'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Now we will see the '''installation''' of '''AVRDUDE.'''&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Switch back to the '''browser'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Point Windows row&lt;br /&gt;
&lt;br /&gt;
Point ‘WinAVR (avrdude)’ link&lt;br /&gt;
|| In the''' Downloads''' page, in''' Windows''' row, click on '''WinAVR (avrdude).'''&lt;br /&gt;
|- &lt;br /&gt;
|| Click WinAVR (avrdude)&lt;br /&gt;
|| It will redirect to '''sourceforge.net website'''. &lt;br /&gt;
|- &lt;br /&gt;
|| Click on ‘Files’&lt;br /&gt;
|| Click on the ‘'''Files'''’ tab.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘WinAVR’&lt;br /&gt;
|| Click on ‘'''WinAVR'''’ folder.&lt;br /&gt;
&lt;br /&gt;
We can see a list of folders for different versions of '''AVRDUDE.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘20100110’&lt;br /&gt;
|| Click on the first folder available in the list, which indicates the latest version.&lt;br /&gt;
&lt;br /&gt;
In my case, it is '''‘20100110‘'''. &lt;br /&gt;
|- &lt;br /&gt;
|| Click WinAVR-20100110-install.exe&lt;br /&gt;
&lt;br /&gt;
|| Then, click on '''WinAVR-20100110-install.exe.'''&lt;br /&gt;
&lt;br /&gt;
This will download the '''executable file''' for '''AVRDUDE.'''&lt;br /&gt;
&lt;br /&gt;
It will take some time to download the '''file'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Point .exe file&lt;br /&gt;
|| In the '''Downloads''' folder, the downloaded '''.exe file''' is available&lt;br /&gt;
|- &lt;br /&gt;
|| Right click on the '''.exe file'''. &lt;br /&gt;
&lt;br /&gt;
Click on ‘Run as administrator’&lt;br /&gt;
|| Right click on it and select ‘'''Run as Administrator'''’.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘Yes’&lt;br /&gt;
|| A window will pop-up asking permission to '''install'''.&lt;br /&gt;
&lt;br /&gt;
Click on ‘'''Yes'''’ button.&lt;br /&gt;
|- &lt;br /&gt;
|| Select ‘English’ &amp;gt;&amp;gt; Click ‘OK’ &amp;gt;&amp;gt; Click ‘Next’ &amp;gt;&amp;gt; Click ‘I Agree’&lt;br /&gt;
|| Then another window pops up asking to select a language.&lt;br /&gt;
&lt;br /&gt;
Select '''English''' and then click ‘'''OK'''’ button.&lt;br /&gt;
&lt;br /&gt;
Click ‘'''Next'''’ in the '''Setup Wizard''' window.&lt;br /&gt;
&lt;br /&gt;
Click ‘'''I agree'''’ in the '''License Agreement''' window.&lt;br /&gt;
|- &lt;br /&gt;
|| Browse the location&lt;br /&gt;
|| Browse to the location where you would want to '''install''' the '''software'''.&lt;br /&gt;
&lt;br /&gt;
I’ll install it on '''Desktop'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘Next’ &amp;gt;&amp;gt; Click ‘Install’&lt;br /&gt;
|| Click on ‘'''Next'''’ button.&lt;br /&gt;
&lt;br /&gt;
Click on ‘'''Install'''’ button.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘Finish’&lt;br /&gt;
|| It will take some time to '''install''' the '''software'''&lt;br /&gt;
&lt;br /&gt;
After completion, click on ‘'''Finish'''’ button.&lt;br /&gt;
|- &lt;br /&gt;
|| Open Windows search&lt;br /&gt;
|| To make sure it is installed, open '''command prompt''' using '''Windows search.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Type '''‘avrdude'''’&lt;br /&gt;
&lt;br /&gt;
Point the version number&lt;br /&gt;
|| Type ‘'''avrdude'''’ and press '''ENTER.'''&lt;br /&gt;
&lt;br /&gt;
We can see the version of''' AVRDUDE installed''' on the machine.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Next, we will see about '''USBasp programmer.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 5:&lt;br /&gt;
&lt;br /&gt;
(picture of USBasp programmer, '''USBasp_Programmer.jpg''')&lt;br /&gt;
|| &lt;br /&gt;
&lt;br /&gt;
This is a picture of a '''USBasp programmer'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 6:&lt;br /&gt;
&lt;br /&gt;
Why USBasp drivers?&lt;br /&gt;
|| Why '''USBasp drivers'''?&lt;br /&gt;
*A '''USBasp programmer''' is used to '''program''' the '''controller''' on '''OpenPLC Mainboard'''.&lt;br /&gt;
* '''AVRDUDE''' will not recognize the '''USBasp''', if '''drivers''' are not '''installed'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Now, we’ll see how to install the '''USBasp driver'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Switch back to the '''browser'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| I’m using '''Windows 8 OS''' to do the '''installation'''.&lt;br /&gt;
&lt;br /&gt;
The procedure is the same for '''Windows 10 '''also.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| First, we need to download the '''installation files.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘USBasp drivers’ link&lt;br /&gt;
&lt;br /&gt;
Text box: These installation files are for both Windows 8 and Windows 10&lt;br /&gt;
&lt;br /&gt;
|| In the '''Windows''' row, click on ‘'''USBasp drivers’ link''' to download them.&lt;br /&gt;
|- &lt;br /&gt;
|| Point the .zip file&lt;br /&gt;
|| In the '''Downloads''' folder, we can see a '''.zip file''' of '''USBasp drivers'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Right click &amp;gt;&amp;gt; Click ‘Extract All’&lt;br /&gt;
|| Right click on it and select ‘'''Extract All'''’.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘Extract’&lt;br /&gt;
|| Browse to the location where you want to extract and click ‘'''Extract'''’.&lt;br /&gt;
&lt;br /&gt;
I’ll extract to the '''Downloads''' folder.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Connect the '''USBasp programmer''' to one of the '''USB ports''' of your PC.&lt;br /&gt;
|- &lt;br /&gt;
|| Open Windows search&lt;br /&gt;
|| Now, open '''Windows search'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Type ‘Device Manager’ &lt;br /&gt;
&lt;br /&gt;
Press ENTER&lt;br /&gt;
|| Search for ‘'''Device Manager'''’.&lt;br /&gt;
&lt;br /&gt;
In '''Windows 8''', we can find '''‘Device Manager’''' under '''Settings '''&lt;br /&gt;
&lt;br /&gt;
Click on '''Device Manager.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘Other Devices’&lt;br /&gt;
&lt;br /&gt;
Point ‘USBasp’&lt;br /&gt;
|| Click on ‘'''Other devices'''’.&lt;br /&gt;
&lt;br /&gt;
We can see ‘'''USBasp'''’.&lt;br /&gt;
|- &lt;br /&gt;
|| Point yellow sign&lt;br /&gt;
|| The yellow sign near '''USBasp''' indicates that it’s not connected.&lt;br /&gt;
|- &lt;br /&gt;
|| Right click on ‘USBasp’ &amp;gt;&amp;gt; Click ‘Update Driver Software’&lt;br /&gt;
|| Right click on it and select ‘'''Update Driver Software'''’.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| A window will pop up with ‘'''How do you want to search for driver software?’'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘Browse my computer for driver software’&lt;br /&gt;
|| Click ‘'''Browse my computer for driver software'''’.&lt;br /&gt;
|- &lt;br /&gt;
|| Browse to the location&lt;br /&gt;
&lt;br /&gt;
Click ‘Install’&lt;br /&gt;
|| Browse to the location where you have extracted the ‘'''USBasp drivers'''’ folder.&lt;br /&gt;
&lt;br /&gt;
I’ll change to '''Downloads.'''&lt;br /&gt;
&lt;br /&gt;
Click on '''Next''' button.&lt;br /&gt;
|- &lt;br /&gt;
|| Point the message&lt;br /&gt;
|| But, we can see a message as:&lt;br /&gt;
&lt;br /&gt;
‘'''Windows encountered a problem installing the driver software for your device’'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| This is because there is a '''driver''' restriction for '''non-digitally signed drivers.'''&lt;br /&gt;
&lt;br /&gt;
Only '''digitally signed drivers''' are allowed in '''Windows 8''' and '''Windows 10'''&lt;br /&gt;
&lt;br /&gt;
Therefore we have to disable the '''signature checking'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Press SHIFT and Restart &lt;br /&gt;
|| To do that, hold the '''Shift''' key and '''restart''' the computer.&lt;br /&gt;
&lt;br /&gt;
The computer will restart with some clicking options on the screen.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘troubleshoot’&lt;br /&gt;
|| Click on ‘'''Troubleshoot'''’ option.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘Advanced Options’&lt;br /&gt;
&lt;br /&gt;
Click ‘Startup Settings’&lt;br /&gt;
&lt;br /&gt;
|| Then click on ‘'''Advanced Options'''’.&lt;br /&gt;
&lt;br /&gt;
Click on ‘'''Startup Settings'''’.&lt;br /&gt;
&lt;br /&gt;
On '''Windows 10''', it might be on a second page, after &amp;quot;'''Show more settings'''&amp;quot;.&lt;br /&gt;
|- &lt;br /&gt;
|| Highlight the options&lt;br /&gt;
|| A new window opens with the message:&lt;br /&gt;
&lt;br /&gt;
‘'''after restart you will be able to change some windows options'''’.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘Restart’&lt;br /&gt;
|| Now simply click on the '''Restart''' button.&lt;br /&gt;
&lt;br /&gt;
When the computer '''reboots''' it will show some options on the screen.&lt;br /&gt;
|- &lt;br /&gt;
|| Press 7&lt;br /&gt;
|| Press '''7''' in the keyboard to select option 7, i.e. ‘'''Disable driver signature enforcement'''’.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| After that, the computer will start '''Windows''' normally but now with '''disabled driver signature detection'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Now again go to the ‘'''Device manager'''’ and try '''installing''' the '''driver''' as before.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| We’ll get a warning that says ‘'''Windows can’t verify the publisher of this driver software’'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Click ‘Install this driver software anyway’&lt;br /&gt;
|| Ignore it, and click on ‘'''Install this driver software anyway'''’.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| We can see a message ‘'''Windows has successfully updated your driver software’.'''&lt;br /&gt;
&lt;br /&gt;
Click on the '''Close''' button.&lt;br /&gt;
|- &lt;br /&gt;
|| Point ‘USBasp’ in ‘Other devices’&lt;br /&gt;
|| Now we can observe that the yellow sign at '''USBasp''' is not there.&lt;br /&gt;
&lt;br /&gt;
Thus, '''USBasp drivers''' are successfully '''installed''' and working.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| This brings us to the end of this tutorial. &lt;br /&gt;
&lt;br /&gt;
Let us summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 7: Summary&lt;br /&gt;
&lt;br /&gt;
We learnt to install&lt;br /&gt;
*LDmicro&lt;br /&gt;
*AVRDUDE&lt;br /&gt;
*Drivers for USBasp programmer&lt;br /&gt;
&lt;br /&gt;
|| In this tutorial, we learnt how to install&lt;br /&gt;
*'''LDmicro'''&lt;br /&gt;
*'''AVRDUDE'''&lt;br /&gt;
*'''drivers''' for '''USBasp programmer'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 8:&lt;br /&gt;
&lt;br /&gt;
About Spoken Tutorial project&lt;br /&gt;
|| &lt;br /&gt;
* The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
* Please download and watch it.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 9:&lt;br /&gt;
&lt;br /&gt;
Spoken Tutorial workshops&lt;br /&gt;
|| The''' Spoken Tutorial Project''' team:&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&lt;br /&gt;
&lt;br /&gt;
For more details, please write to us.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 10:&lt;br /&gt;
&lt;br /&gt;
Forum for specific questions:&lt;br /&gt;
|| &lt;br /&gt;
* Do you have questions in THIS Spoken Tutorial?&lt;br /&gt;
* Please visit this site&lt;br /&gt;
* Choose the minute and second where you have the question&lt;br /&gt;
* Explain your question briefly&lt;br /&gt;
* Someone from our team will answer them&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 11:&lt;br /&gt;
&lt;br /&gt;
Forum for specific questions:&lt;br /&gt;
|| Do you have 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;
|| Slide 12:&lt;br /&gt;
&lt;br /&gt;
Acknowledgment&lt;br /&gt;
|| Spoken Tutorial Project is funded by MHRD, Government of India.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 13:&lt;br /&gt;
&lt;br /&gt;
Thank you slide&lt;br /&gt;
|| 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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/Installation-of-LDmicro-on-Linux/English</id>
		<title>OpenPLC-with-LDmicro/C2/Installation-of-LDmicro-on-Linux/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/Installation-of-LDmicro-on-Linux/English"/>
				<updated>2021-06-18T13:23:22Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|| '''VISUAL CUE'''&lt;br /&gt;
|| '''NARRATION'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide 1: &lt;br /&gt;
&lt;br /&gt;
Welcome slide&lt;br /&gt;
|| Welcome to the spoken tutorial on''' Installation of LDmicro on Linux.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 2: &lt;br /&gt;
&lt;br /&gt;
Learning Objectives&lt;br /&gt;
&lt;br /&gt;
|| In this tutorial, we will see how to install,&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''AVRDUDE'''&lt;br /&gt;
* '''Drivers''' for '''USBasp programmer'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 3:&lt;br /&gt;
&lt;br /&gt;
System Requirements&lt;br /&gt;
|| To record this tutorial I am using:&lt;br /&gt;
* '''Ubuntu Linux''' 18.04 operating system&lt;br /&gt;
* '''USBasp programmer'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Now we’ll see how to install '''LDmicro'''.&lt;br /&gt;
|- &lt;br /&gt;
|| OpenPLC website&lt;br /&gt;
&lt;br /&gt;
|| To download the '''installation files''', open the '''web browser''' of your choice.&lt;br /&gt;
&lt;br /&gt;
I’m using '''Firefox'''.&lt;br /&gt;
&lt;br /&gt;
Go to the website [https://openplc.fossee.in/ https://openplc.fossee.in]&lt;br /&gt;
&lt;br /&gt;
Make sure you’ve an active '''internet connection'''.&lt;br /&gt;
|- &lt;br /&gt;
|| OpenPLC website&lt;br /&gt;
|| In the top menu bar, click on the '''Downloads link'''.&lt;br /&gt;
|- &lt;br /&gt;
|| OpenPLC website&lt;br /&gt;
&lt;br /&gt;
&amp;lt;point to various links&amp;gt;&lt;br /&gt;
|| Here we will find the '''links''' to download '''LDmicro installation files'''.&lt;br /&gt;
&lt;br /&gt;
The '''installation files''' are available for '''Windows''' and '''Ubuntu Linux''' OS.&lt;br /&gt;
&lt;br /&gt;
'''Ubuntu '''has two columns as''' Linux Ubuntu using Gtk '''and''' Linux Ubuntu using Qt.'''&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| We will download the '''installation files''' of '''LDmicro''' developed using''' Qt toolkit.'''&lt;br /&gt;
|- &lt;br /&gt;
|| OpenPLC website&lt;br /&gt;
&lt;br /&gt;
Click LDmicro for Linux(deb)''' '''&amp;gt;&amp;gt; Click Save File''' '''&amp;gt;&amp;gt; Click OK&lt;br /&gt;
|| Click on the appropriate '''link''' depending on your '''operating system'''’s version.&lt;br /&gt;
&lt;br /&gt;
I will click on '''LDmicro for Ubuntu 18.04(deb) link'''.&lt;br /&gt;
&lt;br /&gt;
A dialog box opens.&lt;br /&gt;
&lt;br /&gt;
Click on '''Save File, '''and then click the '''OK '''button.&lt;br /&gt;
|- &lt;br /&gt;
|| Point to the .deb file in the downloads folder&lt;br /&gt;
|| In the '''Downloads '''folder, we can see that the downloaded '''.deb '''file is available.&lt;br /&gt;
|- &lt;br /&gt;
|| Open the terminal.&lt;br /&gt;
&lt;br /&gt;
Press CTRL+ALT+T&lt;br /&gt;
|| Now let us open the '''Terminal '''by pressing '''CTRL +ALT + T''' keys simultaneously.&lt;br /&gt;
|- &lt;br /&gt;
|| Terminal&lt;br /&gt;
&lt;br /&gt;
Type &amp;gt;&amp;gt; cd Downloads&lt;br /&gt;
|| Go to the '''Downloads '''folder by typing '''cd &amp;lt;space&amp;gt;Downloads '''and press ‘'''Enter'''’.&lt;br /&gt;
|- &lt;br /&gt;
|| Terminal &lt;br /&gt;
&lt;br /&gt;
Type &amp;gt;&amp;gt; ls&lt;br /&gt;
|| Type '''ls '''to see the '''LDmicro package''' name.&lt;br /&gt;
&lt;br /&gt;
Press''' Enter'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Highlight the LDmicro version&lt;br /&gt;
|| Here, in my system, it shows '''LDMicro_Qt-2.3.2-Linux-bionic.deb '''&lt;br /&gt;
&lt;br /&gt;
The name may vary in future.&lt;br /&gt;
|- &lt;br /&gt;
|| Type &lt;br /&gt;
&lt;br /&gt;
&amp;gt;&amp;gt; '''sudo dpkg -i LDMicro_Qt-2.3.2-Linux-bionic.deb'''&lt;br /&gt;
|| To do the '''installation''', type the '''command sudo dpkg -i LDMicro_Qt-2.3.2-Linux-bionic.deb '''and press '''ENTER.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Type &amp;gt;&amp;gt; &amp;lt;''password''&amp;gt;&lt;br /&gt;
|| Type the '''admin password''' if prompted and press '''ENTER'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| We can see '''LDmicro''' is '''installed''' successfully.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 4: Installation error&lt;br /&gt;
&lt;br /&gt;
Error:&lt;br /&gt;
&lt;br /&gt;
“dpkg: dependency problems prevent configuration of ldmicro”.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|| You might receive an error saying '''“dpkg: dependency problems prevent configuration of ldmicro”.'''&lt;br /&gt;
&lt;br /&gt;
This is because '''LDmicro''' is dependent on some '''Qt libraries'''.&lt;br /&gt;
&lt;br /&gt;
This is the '''command''' to '''install''' those '''libraries'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Highlight the error in the terminal&lt;br /&gt;
|| Switch back to '''terminal'''.&lt;br /&gt;
&lt;br /&gt;
Please follow the steps as shown here only if you get the error as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| Solution:&lt;br /&gt;
&lt;br /&gt;
sudo apt install qt5-default&lt;br /&gt;
|| We will now '''install''' a '''Qt package''' which has the required basic '''libraries'''.&lt;br /&gt;
&lt;br /&gt;
For that type '''‘sudo apt install qt5-default’ '''and press '''ENTER'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
||Permission prompt will appear &amp;gt;&amp;gt; press Y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Type &lt;br /&gt;
&lt;br /&gt;
&amp;gt;&amp;gt; '''sudo dpkg -i LDMicro_Qt-2.3.2-Linux-bionic.deb'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
||After that it’ll ask your '''permission''' again to '''install''' these '''libraries'''.&lt;br /&gt;
&lt;br /&gt;
Type '''Y''' and press '''ENTER'''.&lt;br /&gt;
&lt;br /&gt;
We have now '''installed''' required '''qt5 libraries'''.&lt;br /&gt;
&lt;br /&gt;
Now again type the '''command''' as shown here to do the '''installation'''.&lt;br /&gt;
&lt;br /&gt;
Press '''Enter'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Now''', LDmicro''' software is installed.&lt;br /&gt;
|- &lt;br /&gt;
|| Type &amp;gt;&amp;gt; '''ldmicro''' &lt;br /&gt;
&lt;br /&gt;
|| To make sure, type '''‘ldmicro’ '''in the '''terminal''' and press '''ENTER.'''&lt;br /&gt;
|- &lt;br /&gt;
|| '''LDmicro '''interface &lt;br /&gt;
|| '''LDMicro''' interface opens. &lt;br /&gt;
&lt;br /&gt;
This ensures that '''LDmicro''' is installed successfully.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Next we’ll see how to install '''AVRDUDE'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 5:&lt;br /&gt;
&lt;br /&gt;
What is AVRDUDE?&lt;br /&gt;
|| What is '''AVRDUDE'''?&lt;br /&gt;
&lt;br /&gt;
'''AVRDUDE '''stands for '''AVR Downloader Uploader'''.&lt;br /&gt;
&lt;br /&gt;
It is a tool for downloading or uploading the '''on-chip memories''' of '''AVR microcontrollers'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Switch back to terminal&lt;br /&gt;
|| To install '''AVRDUDE''', switch back to '''terminal'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Type, sudo apt-get install avrdude&lt;br /&gt;
&lt;br /&gt;
|| Type, '''sudo apt&amp;lt;hyphen&amp;gt;get install avrdude''' and press '''ENTER'''.&lt;br /&gt;
&lt;br /&gt;
Wait until the '''installation''' is completed.&lt;br /&gt;
|- &lt;br /&gt;
|| Type avrdude&lt;br /&gt;
&lt;br /&gt;
Highlight the version&lt;br /&gt;
|| To check the installed version, type '''avrdude '''and press '''ENTER'''.&lt;br /&gt;
&lt;br /&gt;
Here, you can find the version number at the bottom of the '''terminal'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Next, we will see about '''USBasp programmer'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 6:&lt;br /&gt;
&lt;br /&gt;
(picture of USBasp programmer, '''USBasp_Programmer.jpg''')&lt;br /&gt;
|| &lt;br /&gt;
&lt;br /&gt;
This is a picture of a '''USBasp programmer'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 7: why USBasp drivers&lt;br /&gt;
* '''USBasp programmer''' is used to '''program''' the '''controller''' on '''OpenPLC Mainboard'''.&lt;br /&gt;
* '''AVRDUDE''' will not recognize the '''USBasp''', if '''drivers''' are not '''installed'''.&lt;br /&gt;
&lt;br /&gt;
|| Why USBasp drivers?&lt;br /&gt;
* A '''USBasp programmer''' is used to '''program''' the '''controller''' on '''OpenPLC Mainboard'''.&lt;br /&gt;
* '''AVRDUDE''' will not recognize the '''USBasp''', if '''drivers''' are not '''installed'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Now, we’ll see how to install '''USBasp''' drivers.&lt;br /&gt;
&lt;br /&gt;
In '''Linux OS''', the '''USBasp drivers''' are pre-installed.&lt;br /&gt;
|- &lt;br /&gt;
|| Switch back to the terminal&lt;br /&gt;
|| Switch back to the '''terminal'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Terminal&lt;br /&gt;
&lt;br /&gt;
Type &amp;gt;&amp;gt;lsusb&lt;br /&gt;
|| Type''' lsusb '''and press '''Enter'''.&lt;br /&gt;
&lt;br /&gt;
This will give the information about '''USB buses''' in the system and the '''devices''' connected to them. &lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| The information you get on the '''terminal''' may not be the same as mine.&lt;br /&gt;
|- &lt;br /&gt;
|| Connect USBasp to a USB port of Computer&lt;br /&gt;
|| Now, connect a '''USBasp programmer''' to one of the '''USB ports''' of your computer.&lt;br /&gt;
|- &lt;br /&gt;
|| Terminal&lt;br /&gt;
&lt;br /&gt;
Type &amp;gt;&amp;gt; '''‘'''lsusb’&lt;br /&gt;
|| Now again, in the '''terminal''' type '''‘lsusb’''' and press '''ENTER.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Terminal&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|| We can observe there is an extra line of information of the '''bus''' and the '''device''' connected to it.&lt;br /&gt;
&lt;br /&gt;
We can find a keyword '''libusb '''in the new line which indicates that '''USBasp programmer''' is connected. &lt;br /&gt;
&lt;br /&gt;
This indicates that the '''drivers''' are installed successfully.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| This brings us to the end of this tutorial. &lt;br /&gt;
&lt;br /&gt;
Let us summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 8: Summary&lt;br /&gt;
&lt;br /&gt;
We learnt to install&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''AVRDUDE'''&lt;br /&gt;
* Drivers for '''USBasp''' programmer&lt;br /&gt;
&lt;br /&gt;
|| In this tutorial, we learnt to install&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''AVRDUDE '''and&lt;br /&gt;
* '''Drivers''' for '''USBasp programmer'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 9:&lt;br /&gt;
&lt;br /&gt;
About Spoken Tutorial project&lt;br /&gt;
|| The video at the following link summarizes the Spoken Tutorial project.&lt;br /&gt;
&lt;br /&gt;
Please download and watch it&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 10:&lt;br /&gt;
&lt;br /&gt;
Spoken Tutorial workshops&lt;br /&gt;
|| The''' Spoken Tutorial Project''' team:&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&lt;br /&gt;
&lt;br /&gt;
For more details, please write to us.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 11 :&lt;br /&gt;
&lt;br /&gt;
Answers for THIS Spoken Tutorial&lt;br /&gt;
|| &lt;br /&gt;
* Do you have questions in THIS Spoken Tutorial?&lt;br /&gt;
* Please visit this site.&lt;br /&gt;
* Choose the minute and second where you have the question.&lt;br /&gt;
* Explain your question briefly.&lt;br /&gt;
* The Spoken Tutorial project will ensure an answer.&lt;br /&gt;
* You will have to register to ask questions.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 12:&lt;br /&gt;
&lt;br /&gt;
Forum for specific questions:&lt;br /&gt;
|| &lt;br /&gt;
* The Spoken Tutorial forum is for specific questions on this tutorial.&lt;br /&gt;
* Please do not post unrelated and general questions on them.&lt;br /&gt;
* This will help reduce the clutter.&lt;br /&gt;
* With less clutter, we can use these discussions as instructional material.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 12:&lt;br /&gt;
&lt;br /&gt;
Forum for specific questions:&lt;br /&gt;
|| &lt;br /&gt;
* Do you have any general / technical questions on OpenPLC?&lt;br /&gt;
* Please visit the FOSSEE forum and post your question.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 13:&lt;br /&gt;
&lt;br /&gt;
Acknowledgement&lt;br /&gt;
|| Spoken Tutorial Project is funded by MHRD, Government of India.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 14:&lt;br /&gt;
&lt;br /&gt;
Thank you slide&lt;br /&gt;
|| 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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/Installation-of-LDmicro-on-Linux/English</id>
		<title>OpenPLC-with-LDmicro/C2/Installation-of-LDmicro-on-Linux/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-with-LDmicro/C2/Installation-of-LDmicro-on-Linux/English"/>
				<updated>2021-06-18T13:22:58Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|| '''VISUAL CUE'''&lt;br /&gt;
|| '''NARRATION'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide 1: &lt;br /&gt;
&lt;br /&gt;
Welcome slide&lt;br /&gt;
|| Welcome to the spoken tutorial on''' Installation of LDmicro on Linux.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 2: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|| In this tutorial, we will see how to install,&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''AVRDUDE'''&lt;br /&gt;
* '''Drivers''' for '''USBasp programmer'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 3:&lt;br /&gt;
&lt;br /&gt;
System Requirements&lt;br /&gt;
|| To record this tutorial I am using:&lt;br /&gt;
* '''Ubuntu Linux''' 18.04 operating system&lt;br /&gt;
* '''USBasp programmer'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Now we’ll see how to install '''LDmicro'''.&lt;br /&gt;
|- &lt;br /&gt;
|| OpenPLC website&lt;br /&gt;
&lt;br /&gt;
|| To download the '''installation files''', open the '''web browser''' of your choice.&lt;br /&gt;
&lt;br /&gt;
I’m using '''Firefox'''.&lt;br /&gt;
&lt;br /&gt;
Go to the website [https://openplc.fossee.in/ https://openplc.fossee.in]&lt;br /&gt;
&lt;br /&gt;
Make sure you’ve an active '''internet connection'''.&lt;br /&gt;
|- &lt;br /&gt;
|| OpenPLC website&lt;br /&gt;
|| In the top menu bar, click on the '''Downloads link'''.&lt;br /&gt;
|- &lt;br /&gt;
|| OpenPLC website&lt;br /&gt;
&lt;br /&gt;
&amp;lt;point to various links&amp;gt;&lt;br /&gt;
|| Here we will find the '''links''' to download '''LDmicro installation files'''.&lt;br /&gt;
&lt;br /&gt;
The '''installation files''' are available for '''Windows''' and '''Ubuntu Linux''' OS.&lt;br /&gt;
&lt;br /&gt;
'''Ubuntu '''has two columns as''' Linux Ubuntu using Gtk '''and''' Linux Ubuntu using Qt.'''&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| We will download the '''installation files''' of '''LDmicro''' developed using''' Qt toolkit.'''&lt;br /&gt;
|- &lt;br /&gt;
|| OpenPLC website&lt;br /&gt;
&lt;br /&gt;
Click LDmicro for Linux(deb)''' '''&amp;gt;&amp;gt; Click Save File''' '''&amp;gt;&amp;gt; Click OK&lt;br /&gt;
|| Click on the appropriate '''link''' depending on your '''operating system'''’s version.&lt;br /&gt;
&lt;br /&gt;
I will click on '''LDmicro for Ubuntu 18.04(deb) link'''.&lt;br /&gt;
&lt;br /&gt;
A dialog box opens.&lt;br /&gt;
&lt;br /&gt;
Click on '''Save File, '''and then click the '''OK '''button.&lt;br /&gt;
|- &lt;br /&gt;
|| Point to the .deb file in the downloads folder&lt;br /&gt;
|| In the '''Downloads '''folder, we can see that the downloaded '''.deb '''file is available.&lt;br /&gt;
|- &lt;br /&gt;
|| Open the terminal.&lt;br /&gt;
&lt;br /&gt;
Press CTRL+ALT+T&lt;br /&gt;
|| Now let us open the '''Terminal '''by pressing '''CTRL +ALT + T''' keys simultaneously.&lt;br /&gt;
|- &lt;br /&gt;
|| Terminal&lt;br /&gt;
&lt;br /&gt;
Type &amp;gt;&amp;gt; cd Downloads&lt;br /&gt;
|| Go to the '''Downloads '''folder by typing '''cd &amp;lt;space&amp;gt;Downloads '''and press ‘'''Enter'''’.&lt;br /&gt;
|- &lt;br /&gt;
|| Terminal &lt;br /&gt;
&lt;br /&gt;
Type &amp;gt;&amp;gt; ls&lt;br /&gt;
|| Type '''ls '''to see the '''LDmicro package''' name.&lt;br /&gt;
&lt;br /&gt;
Press''' Enter'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Highlight the LDmicro version&lt;br /&gt;
|| Here, in my system, it shows '''LDMicro_Qt-2.3.2-Linux-bionic.deb '''&lt;br /&gt;
&lt;br /&gt;
The name may vary in future.&lt;br /&gt;
|- &lt;br /&gt;
|| Type &lt;br /&gt;
&lt;br /&gt;
&amp;gt;&amp;gt; '''sudo dpkg -i LDMicro_Qt-2.3.2-Linux-bionic.deb'''&lt;br /&gt;
|| To do the '''installation''', type the '''command sudo dpkg -i LDMicro_Qt-2.3.2-Linux-bionic.deb '''and press '''ENTER.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Type &amp;gt;&amp;gt; &amp;lt;''password''&amp;gt;&lt;br /&gt;
|| Type the '''admin password''' if prompted and press '''ENTER'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| We can see '''LDmicro''' is '''installed''' successfully.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 4: Installation error&lt;br /&gt;
&lt;br /&gt;
Error:&lt;br /&gt;
&lt;br /&gt;
“dpkg: dependency problems prevent configuration of ldmicro”.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|| You might receive an error saying '''“dpkg: dependency problems prevent configuration of ldmicro”.'''&lt;br /&gt;
&lt;br /&gt;
This is because '''LDmicro''' is dependent on some '''Qt libraries'''.&lt;br /&gt;
&lt;br /&gt;
This is the '''command''' to '''install''' those '''libraries'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Highlight the error in the terminal&lt;br /&gt;
|| Switch back to '''terminal'''.&lt;br /&gt;
&lt;br /&gt;
Please follow the steps as shown here only if you get the error as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| Solution:&lt;br /&gt;
&lt;br /&gt;
sudo apt install qt5-default&lt;br /&gt;
|| We will now '''install''' a '''Qt package''' which has the required basic '''libraries'''.&lt;br /&gt;
&lt;br /&gt;
For that type '''‘sudo apt install qt5-default’ '''and press '''ENTER'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
||Permission prompt will appear &amp;gt;&amp;gt; press Y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Type &lt;br /&gt;
&lt;br /&gt;
&amp;gt;&amp;gt; '''sudo dpkg -i LDMicro_Qt-2.3.2-Linux-bionic.deb'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
||After that it’ll ask your '''permission''' again to '''install''' these '''libraries'''.&lt;br /&gt;
&lt;br /&gt;
Type '''Y''' and press '''ENTER'''.&lt;br /&gt;
&lt;br /&gt;
We have now '''installed''' required '''qt5 libraries'''.&lt;br /&gt;
&lt;br /&gt;
Now again type the '''command''' as shown here to do the '''installation'''.&lt;br /&gt;
&lt;br /&gt;
Press '''Enter'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Now''', LDmicro''' software is installed.&lt;br /&gt;
|- &lt;br /&gt;
|| Type &amp;gt;&amp;gt; '''ldmicro''' &lt;br /&gt;
&lt;br /&gt;
|| To make sure, type '''‘ldmicro’ '''in the '''terminal''' and press '''ENTER.'''&lt;br /&gt;
|- &lt;br /&gt;
|| '''LDmicro '''interface &lt;br /&gt;
|| '''LDMicro''' interface opens. &lt;br /&gt;
&lt;br /&gt;
This ensures that '''LDmicro''' is installed successfully.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Next we’ll see how to install '''AVRDUDE'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 5:&lt;br /&gt;
&lt;br /&gt;
What is AVRDUDE?&lt;br /&gt;
|| What is '''AVRDUDE'''?&lt;br /&gt;
&lt;br /&gt;
'''AVRDUDE '''stands for '''AVR Downloader Uploader'''.&lt;br /&gt;
&lt;br /&gt;
It is a tool for downloading or uploading the '''on-chip memories''' of '''AVR microcontrollers'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Switch back to terminal&lt;br /&gt;
|| To install '''AVRDUDE''', switch back to '''terminal'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Type, sudo apt-get install avrdude&lt;br /&gt;
&lt;br /&gt;
|| Type, '''sudo apt&amp;lt;hyphen&amp;gt;get install avrdude''' and press '''ENTER'''.&lt;br /&gt;
&lt;br /&gt;
Wait until the '''installation''' is completed.&lt;br /&gt;
|- &lt;br /&gt;
|| Type avrdude&lt;br /&gt;
&lt;br /&gt;
Highlight the version&lt;br /&gt;
|| To check the installed version, type '''avrdude '''and press '''ENTER'''.&lt;br /&gt;
&lt;br /&gt;
Here, you can find the version number at the bottom of the '''terminal'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Next, we will see about '''USBasp programmer'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 6:&lt;br /&gt;
&lt;br /&gt;
(picture of USBasp programmer, '''USBasp_Programmer.jpg''')&lt;br /&gt;
|| &lt;br /&gt;
&lt;br /&gt;
This is a picture of a '''USBasp programmer'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 7: why USBasp drivers&lt;br /&gt;
* '''USBasp programmer''' is used to '''program''' the '''controller''' on '''OpenPLC Mainboard'''.&lt;br /&gt;
* '''AVRDUDE''' will not recognize the '''USBasp''', if '''drivers''' are not '''installed'''.&lt;br /&gt;
&lt;br /&gt;
|| Why USBasp drivers?&lt;br /&gt;
* A '''USBasp programmer''' is used to '''program''' the '''controller''' on '''OpenPLC Mainboard'''.&lt;br /&gt;
* '''AVRDUDE''' will not recognize the '''USBasp''', if '''drivers''' are not '''installed'''.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| Now, we’ll see how to install '''USBasp''' drivers.&lt;br /&gt;
&lt;br /&gt;
In '''Linux OS''', the '''USBasp drivers''' are pre-installed.&lt;br /&gt;
|- &lt;br /&gt;
|| Switch back to the terminal&lt;br /&gt;
|| Switch back to the '''terminal'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Terminal&lt;br /&gt;
&lt;br /&gt;
Type &amp;gt;&amp;gt;lsusb&lt;br /&gt;
|| Type''' lsusb '''and press '''Enter'''.&lt;br /&gt;
&lt;br /&gt;
This will give the information about '''USB buses''' in the system and the '''devices''' connected to them. &lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| The information you get on the '''terminal''' may not be the same as mine.&lt;br /&gt;
|- &lt;br /&gt;
|| Connect USBasp to a USB port of Computer&lt;br /&gt;
|| Now, connect a '''USBasp programmer''' to one of the '''USB ports''' of your computer.&lt;br /&gt;
|- &lt;br /&gt;
|| Terminal&lt;br /&gt;
&lt;br /&gt;
Type &amp;gt;&amp;gt; '''‘'''lsusb’&lt;br /&gt;
|| Now again, in the '''terminal''' type '''‘lsusb’''' and press '''ENTER.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Terminal&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|| We can observe there is an extra line of information of the '''bus''' and the '''device''' connected to it.&lt;br /&gt;
&lt;br /&gt;
We can find a keyword '''libusb '''in the new line which indicates that '''USBasp programmer''' is connected. &lt;br /&gt;
&lt;br /&gt;
This indicates that the '''drivers''' are installed successfully.&lt;br /&gt;
|- &lt;br /&gt;
|| &lt;br /&gt;
|| This brings us to the end of this tutorial. &lt;br /&gt;
&lt;br /&gt;
Let us summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 8: Summary&lt;br /&gt;
&lt;br /&gt;
We learnt to install&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''AVRDUDE'''&lt;br /&gt;
* Drivers for '''USBasp''' programmer&lt;br /&gt;
&lt;br /&gt;
|| In this tutorial, we learnt to install&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''AVRDUDE '''and&lt;br /&gt;
* '''Drivers''' for '''USBasp programmer'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 9:&lt;br /&gt;
&lt;br /&gt;
About Spoken Tutorial project&lt;br /&gt;
|| The video at the following link summarizes the Spoken Tutorial project.&lt;br /&gt;
&lt;br /&gt;
Please download and watch it&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 10:&lt;br /&gt;
&lt;br /&gt;
Spoken Tutorial workshops&lt;br /&gt;
|| The''' Spoken Tutorial Project''' team:&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&lt;br /&gt;
&lt;br /&gt;
For more details, please write to us.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 11 :&lt;br /&gt;
&lt;br /&gt;
Answers for THIS Spoken Tutorial&lt;br /&gt;
|| &lt;br /&gt;
* Do you have questions in THIS Spoken Tutorial?&lt;br /&gt;
* Please visit this site.&lt;br /&gt;
* Choose the minute and second where you have the question.&lt;br /&gt;
* Explain your question briefly.&lt;br /&gt;
* The Spoken Tutorial project will ensure an answer.&lt;br /&gt;
* You will have to register to ask questions.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 12:&lt;br /&gt;
&lt;br /&gt;
Forum for specific questions:&lt;br /&gt;
|| &lt;br /&gt;
* The Spoken Tutorial forum is for specific questions on this tutorial.&lt;br /&gt;
* Please do not post unrelated and general questions on them.&lt;br /&gt;
* This will help reduce the clutter.&lt;br /&gt;
* With less clutter, we can use these discussions as instructional material.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 12:&lt;br /&gt;
&lt;br /&gt;
Forum for specific questions:&lt;br /&gt;
|| &lt;br /&gt;
* Do you have any general / technical questions on OpenPLC?&lt;br /&gt;
* Please visit the FOSSEE forum and post your question.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 13:&lt;br /&gt;
&lt;br /&gt;
Acknowledgement&lt;br /&gt;
|| Spoken Tutorial Project is funded by MHRD, Government of India.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide 14:&lt;br /&gt;
&lt;br /&gt;
Thank you slide&lt;br /&gt;
|| 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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C3/Compare-Instructions/English</id>
		<title>OpenPLC-version1-with-LDmicro/C3/Compare-Instructions/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C3/Compare-Instructions/English"/>
				<updated>2020-11-20T21:07:03Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: 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;'''Visual Cue'''&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;hr /&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''' Compare instructions.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 2: Learning Objectives&lt;br /&gt;
&lt;br /&gt;
* Compare instructions&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will learn about working of&lt;br /&gt;
&lt;br /&gt;
* Compare instructions&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 3: System Requirements&lt;br /&gt;
&lt;br /&gt;
* Ubuntu 18.04''' '''operating system&lt;br /&gt;
* LDmicro&lt;br /&gt;
* OpenPLC V1 Mainboard&lt;br /&gt;
* 24V, 2A SMPS&lt;br /&gt;
* USBasp programmer&lt;br /&gt;
* Traffic LIght module&lt;br /&gt;
* Switchboard module&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;
* '''OpenPLC version1 Mainboard'''&lt;br /&gt;
* '''24V, 2A SMPS'''&lt;br /&gt;
* '''USBasp''' programmer&lt;br /&gt;
* '''Traffic Light''' module and&lt;br /&gt;
* '''Switchboard''' module&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;
* Working of Move (MOV) instruction&lt;br /&gt;
* If not, please refer to the relevant tutorials 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;| &lt;br /&gt;
* To follow this tutorial, you should know the working of '''Move''' instruction.&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;| Slide 5: Prerequisites - Hardware setup&lt;br /&gt;
&lt;br /&gt;
hardware-prerequisite.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect''' SMPS''' and '''USBasp''' to the '''Mainboard''' as shown in the picture.&lt;br /&gt;
&lt;br /&gt;
Keep these connections throughout this tutorial.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 6a: Compare instructions&lt;br /&gt;
&lt;br /&gt;
Six types of compare instructions&lt;br /&gt;
&lt;br /&gt;
# equals&lt;br /&gt;
# not equals&lt;br /&gt;
# less than&lt;br /&gt;
# less than or equal&lt;br /&gt;
# greater than&lt;br /&gt;
# greater than or equal&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In '''LDmicro''' we have six types of compare instructions.&lt;br /&gt;
&lt;br /&gt;
They are &lt;br /&gt;
&lt;br /&gt;
# Equals&lt;br /&gt;
# not equals&lt;br /&gt;
# less than&lt;br /&gt;
# less than or equal&lt;br /&gt;
# greater than&lt;br /&gt;
# greater than or equal.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 6b: Compare instructions&lt;br /&gt;
&lt;br /&gt;
* These instructions can be used to compare &lt;br /&gt;
&lt;br /&gt;
* a variable to a variable, &lt;br /&gt;
* variable to a 16-bit signed constant&lt;br /&gt;
&lt;br /&gt;
* Working of these instructions will be similar&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| These instructions can be used to compare a variable to another variable.&lt;br /&gt;
&lt;br /&gt;
Also when we want to compare a variable to a 16-bit signed constant.&lt;br /&gt;
&lt;br /&gt;
Working of these compare instructions will be similar.&lt;br /&gt;
&lt;br /&gt;
But the functioning will be according to their names.&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;| In this tutorial we’ll learn about compare for equals instruction in detail.&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;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will create a virtual circular counter using a compare for equals instruction.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click Instructions -&amp;gt; Insert Contact &amp;gt;&amp;gt; Place the cursor to the right of the contact &amp;gt;&amp;gt; Click instructions -&amp;gt; Insert OSR &amp;gt;&amp;gt; Place the cursor to the right of OSR &amp;gt;&amp;gt; Click Instructions -&amp;gt; Arithmetic instructions -&amp;gt; Insert ADD&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a '''Contact.'''&lt;br /&gt;
&lt;br /&gt;
To the right of it insert an '''OSR'''&lt;br /&gt;
&lt;br /&gt;
To the right of '''OSR''' insert an '''ADD''' instruction as shown here.&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 contact &amp;gt;&amp;gt; Type switch in the name box &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the Contact as '''‘switch’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on ADD&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on the '''ADD''' instruction.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type in the destination and ‘is set as := ‘ columns ‘vcounter’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Set the destination and first operand to ‘'''vcounter’''' meaning virtual counter.&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;| Second operand is by default 1.&lt;br /&gt;
&lt;br /&gt;
Don’t change that.&lt;br /&gt;
&lt;br /&gt;
Click the OK button&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click Edit -&amp;gt; Insert Rung after&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a rung below 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;| We will insert '''Compare for equals''' and '''Move''' instruction in the new rung.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor in the new rung &amp;gt;&amp;gt; Click Instructions -&amp;gt; Comparison operators -&amp;gt; Insert EQU &amp;gt;&amp;gt; place the cursor to the right of the contact &amp;gt;&amp;gt; Click Instructions -&amp;gt; Insert MOV&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor in the new rung .&lt;br /&gt;
&lt;br /&gt;
Click on '''Instructions''' and then '''Comparison operators.'''&lt;br /&gt;
&lt;br /&gt;
Select '''Insert EQU.'''&lt;br /&gt;
&lt;br /&gt;
Next place the cursor to the right of the compare for equals instruction.&lt;br /&gt;
&lt;br /&gt;
Click on '''Instructions''' and then select '''Insert MOV.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on Compare for equals &amp;gt;&amp;gt; Set the first column to vcounter &amp;gt;&amp;gt; Set the second column to 0 &amp;gt;&amp;gt; Click the OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on '''Compare for equals.'''&lt;br /&gt;
&lt;br /&gt;
Compare the ‘'''vcounter’''' variable with 4.&lt;br /&gt;
&lt;br /&gt;
That is, set the first column to '''‘vcounter’''' and the second one to 4.&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;| Double-click on the MOV instruction &amp;gt;&amp;gt; Type vcounter in the destination column &amp;gt;&amp;gt; Type 0 in the source column &amp;gt;&amp;gt; Click the OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on the '''Move''' instruction.&lt;br /&gt;
&lt;br /&gt;
Set the '''Destination''' variable as '''‘vcounter’''' and '''Source''' variable as 0.&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 will now check the working of this logic.&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 &amp;gt;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Click Simulate -&amp;gt; Real-time simulation&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us turn on the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Simulation mode.'''&lt;br /&gt;
&lt;br /&gt;
Next, start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of Xswitch and counter in the I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Initially, the state of '''Xswitch''' and '''vcounter''' are 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on ‘Xswitch’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Change the state of '''Xswitch''' to 1.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of vcounter&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe the state of '''vcounter''' changes to 1.&lt;br /&gt;
&lt;br /&gt;
The state of '''vcounter''' increases by 1 every time there is a high to low transition in '''Xswitch'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on ‘Xswitch’ for 5 more times&lt;br /&gt;
&lt;br /&gt;
Highlight the state of vcounter.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Keep changing the state of '''Xswitch''' from 0 to 1 and back to 0.&lt;br /&gt;
&lt;br /&gt;
We can observe '''vcounter''' takes values 0, 1, 2, 3 and then goes back to 0.&lt;br /&gt;
&lt;br /&gt;
That is like a circular counter with count 3.&lt;br /&gt;
&lt;br /&gt;
|-&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 visualization purpose we will glow a LED whenever the '''vcounter''' value is 0.&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;&amp;gt; Click Halt Simulation &amp;gt;&amp;gt; Click Simulation Mode&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, turn off the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Halt Simulation.'''&lt;br /&gt;
&lt;br /&gt;
Then click '''Simulate''' and '''Simulation Mode.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Visual cue&lt;br /&gt;
&lt;br /&gt;
Click Edit -&amp;gt; Insert rung after&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a rung below the second rung.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor in the new rung &amp;gt;&amp;gt; Click on Instructions -&amp;gt; Comparison Operators -&amp;gt; Insert EQU &amp;gt;&amp;gt; Place the cursor to the right of EQU &amp;gt;&amp;gt; Click on Instructions -&amp;gt; Insert Coil&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place a '''Compare for equals''' and a '''Coil''' in the new rung.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on EQU instruction &amp;gt;&amp;gt; Type vcounter in the first box &amp;gt;&amp;gt; Type 0 in the second box &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on Compare for equals.&lt;br /&gt;
&lt;br /&gt;
Compare the ‘'''vcounter’''' variable with 0.&lt;br /&gt;
&lt;br /&gt;
That is, set the first column to '''‘vcounter’''' and the second one to 0.&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;| Double-click on Ynew &amp;gt;&amp;gt; Type LED in the name box &amp;gt;&amp;gt; Select SET-only option &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the '''Coil''' as '''LED.''' &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the third rung&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Thus this will energise the '''YLED''' whenever the '''vcounter''' value is 0. &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 the logic.&lt;br /&gt;
&lt;br /&gt;
The detailed steps on how to compile and save the logic are explained in the earlier tutorials.&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 on Microcontroller &amp;gt;&amp;gt; Select AVR ATmega16 40-PDIP &lt;br /&gt;
&lt;br /&gt;
Click on Settings &amp;gt;&amp;gt; Click on MCU parameters &amp;gt;&amp;gt; Change Crystal frequency to 16&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on '''Settings''' and select the microcontroller '''AVR ATmega16 40-PDIP.''' &lt;br /&gt;
&lt;br /&gt;
Adjust its parameters as shown here.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch in I/O list &amp;gt;&amp;gt; Select PC0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
&lt;br /&gt;
Double-click on YLED in I/O list &amp;gt;&amp;gt; Select PA0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Assign pin '''PC0''' to '''Xswitch''' and '''PA0''' to '''YLED'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on Compile &amp;gt;&amp;gt; Click on Compile &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘compareequals.hex’ &amp;gt;&amp;gt; Click on Save.&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Compile the logic as '''‘compareequals.hex’.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘compareequals.ld’ &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then save the ladder diagram as '''‘compareequals.ld’.'''&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 will now see the working of this logic on hardware.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect Mainboard to PC using USBasp&lt;br /&gt;
&lt;br /&gt;
laptop-usbasp.jpg&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect the '''Mainboard''' to your laptop using '''USBasp'''.&lt;br /&gt;
&lt;br /&gt;
Turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open terminal &amp;gt;&amp;gt; Type cd Desktop/LDmicro &amp;gt;&amp;gt; Press ENTER &amp;gt;&amp;gt; type ‘'''avrdude -c usbasp -p m16 -U flash:w:compareequals.hex’ '''&amp;gt;&amp;gt; Press ENTER&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open the Terminal by pressing '''CTRL+ALT+T''' keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
Go to the folder where you have saved the hex file.&lt;br /&gt;
&lt;br /&gt;
Type the command as shown to upload the hex file to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
&lt;br /&gt;
This will prevent any hardware damage.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| compareequals.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us see the connection details now. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| compareequals.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect '''GND''' pin of the red LED of '''Traffic Light''' module to '''GND''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Then connect '''+5V pin''' of the red LED to '''PA0''' pin of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| compareequals.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect '''GND''' and 5V of '''Switchboard''' to GND and 5V of the '''Mainboard''' respectively.&lt;br /&gt;
&lt;br /&gt;
Then connect '''NO1''' of the '''Switchboard''' to '''PC0''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Make the connections as shown in the picture.&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;| After making all the connections properly, turn on the power supply.&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 can observe that the LED will be glowing initially.&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;| It will turn off once the '''NO1''' is pressed.&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;| The red LED will glow again after pressing '''NO1''' for 3 more times.&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;| Thus LED glow indicates that the count value of the counter is 0. &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;| Turn off the power supply.&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;| Try out the remaining Compare instructions on your own.&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 7: Summary&lt;br /&gt;
&lt;br /&gt;
In this tutorial, we learnt about&lt;br /&gt;
&lt;br /&gt;
* Compare instructions&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we learnt about&lt;br /&gt;
&lt;br /&gt;
* Compare instructions&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 8: Assignment&lt;br /&gt;
&lt;br /&gt;
Try to &lt;br /&gt;
&lt;br /&gt;
# Turn on a LED whenever the count process is ON and &lt;br /&gt;
# Turn off when count value becomes zero&lt;br /&gt;
&lt;br /&gt;
Hint: Use '''‘greater than’ '''compare instruction to turn on the LED.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| As an assignment, try to &lt;br /&gt;
&lt;br /&gt;
# Turn on a LED whenever the count process is ON and &lt;br /&gt;
# Turn off the same LED when count value becomes zero.&lt;br /&gt;
&lt;br /&gt;
Hint: Use '''‘greater than’ '''compare instruction to turn on the LED.&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;
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 10:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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 11:&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;| &lt;br /&gt;
* 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 12:&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 13:&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 14:&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C3/TON-and-TOFF-Instructions/English</id>
		<title>OpenPLC-version1-with-LDmicro/C3/TON-and-TOFF-Instructions/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C3/TON-and-TOFF-Instructions/English"/>
				<updated>2020-11-20T20:54:59Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: 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;'''Visual Cue'''&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;hr /&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 '''TON &amp;amp; TOFF instructions'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 2: Learning Objectives&lt;br /&gt;
&lt;br /&gt;
* Delayed turn ON (TON) timer&lt;br /&gt;
* Delayed turn OFF (TOFF) timer&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial we’ll learn about working of &lt;br /&gt;
&lt;br /&gt;
* '''Delayed turn ON''' timer and&lt;br /&gt;
* '''Delayed turn OFF''' timer&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 3: System Requirements&lt;br /&gt;
&lt;br /&gt;
* Ubuntu 18.04''' '''OS&lt;br /&gt;
* LDmicro&lt;br /&gt;
* OpenPLC V1 Mainboard&lt;br /&gt;
* 24V, 2A SMPS&lt;br /&gt;
* USBasp programmer&lt;br /&gt;
* Traffic Light module&lt;br /&gt;
* Switchboard module&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;
* '''OpenPLC version1 Mainboard'''&lt;br /&gt;
* '''24V, 2A SMPS'''&lt;br /&gt;
* '''USBasp''' programmer&lt;br /&gt;
* '''Traffic Light''' module and&lt;br /&gt;
* '''Switchboard''' module&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;
* Working of a Contact and a Coil&lt;br /&gt;
* If not, please refer to the relevant tutorials 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;| &lt;br /&gt;
* To follow this tutorial, you should know the working of a '''Contact''' and a '''Coil'''.&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;| Slide 5: Prerequisites - Hardware setup&lt;br /&gt;
&lt;br /&gt;
hardware-prerequisite.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect''' SMPS''' and '''USBasp''' to the '''Mainboard''' as shown in the picture.&lt;br /&gt;
&lt;br /&gt;
Keep these connections throughout this tutorial.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open the LDmicro from the launcher bar&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 on Instructions -&amp;gt; Timers&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on '''Instructions''' and then on '''Timers'''.&lt;br /&gt;
&lt;br /&gt;
In LDmicro, we have 3 different types of timers.&lt;br /&gt;
&lt;br /&gt;
They are '''Delayed turn ON, Delayed turn OFF '''and''' Retentive delayed turn ON'''.&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 learn the working of a '''Delayed''' '''turn''' '''ON''' timer.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert ‘Instructions -&amp;gt; Insert Contact’ &amp;gt;&amp;gt; Place the cursor to the right of the contact &amp;gt;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Insert ‘Instructions -&amp;gt; Insert Coil’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a '''Contact''' and a '''Coil''' as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on contact &amp;gt;&amp;gt; Type switch in name box &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the Contact as '''‘switch’.'''&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 coil &amp;gt;&amp;gt; Rename it as ‘LED1’ &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then rename the Coil as '''‘LED'.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor to the right of the contact &amp;gt;&amp;gt; Click Instructions -&amp;gt; Timers -&amp;gt; Insert TON&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will now add a '''Delayed turn on '''timer to the right of '''Xswitch'''.&lt;br /&gt;
&lt;br /&gt;
For that, place the cursor to the right of '''Xswitch'''.&lt;br /&gt;
&lt;br /&gt;
Click on '''Instructions''' then '''Timers''' and then '''Insert TON.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Tnew&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on the timer.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In the name column, type ON&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In the name column, type '''ON'''.&lt;br /&gt;
&lt;br /&gt;
Note that the name will be prefixed by T by default.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In the delay box type 5000&lt;br /&gt;
&lt;br /&gt;
Click the OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In the '''delay''' column we can enter the desired delay.&lt;br /&gt;
&lt;br /&gt;
Note that the delay is in milliseconds.&lt;br /&gt;
&lt;br /&gt;
We’ll have a delay of 5s. &lt;br /&gt;
&lt;br /&gt;
So type 5000.&lt;br /&gt;
&lt;br /&gt;
Click the OK button.&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 will now check the working of this logic.&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 &amp;gt;&amp;gt; Click Simulate -&amp;gt; Real-time simulation&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us turn on the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Simulation mode.'''&lt;br /&gt;
&lt;br /&gt;
Next, start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of Xswitch, YLED and TON in the I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Initially, the state of '''Xswitch''', '''YLED''' and '''TON''' are 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on Xswitch&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on '''Xswitch''' to change its state to 1.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of TON and YLED&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The state of '''TON''' will change to 20ms but the state of '''YLED''' is still 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of TON and YLED&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe that the state of '''YLED''' will change to 1 after 5s.&lt;br /&gt;
&lt;br /&gt;
The state of '''TON''' changes to 4.990s.&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;| The '''TON''' variable counts up from zero in the units of PLC scan cycle, which is 10ms.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| 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, change the state of '''Xswitch''' to 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of YLED&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe the state of '''YLED''' and '''TON''' changes to 0 immediately.&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;| That is, when '''TON''' is given logic 0 it outputs logic 0 immediately.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on Xswitch &amp;gt;&amp;gt; Double click on Xswitch &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Again change the state of '''Xswitch''' to 1.&lt;br /&gt;
&lt;br /&gt;
Within 5s, change it back to 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of TON&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe the state of '''TON''' goes back to 0.&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;| Thus, for TON to output logic 1 it should be given logic 1 for at least the delay 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; Halt Simulation &amp;gt;&amp;gt; Click Simulate -&amp;gt; Simulation Mode&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, turn off the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Halt Simulation.'''&lt;br /&gt;
&lt;br /&gt;
Then click '''Simulate''' and '''Simulation Mode.'''&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 the logic.&lt;br /&gt;
&lt;br /&gt;
The detailed steps on how to compile and save the logic are explained in the earlier tutorials.&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 on Microcontroller &amp;gt;&amp;gt; Select AVR ATmega16 40-PDIP &lt;br /&gt;
&lt;br /&gt;
Click on Settings &amp;gt;&amp;gt; Click on MCU parameters &amp;gt;&amp;gt; Change Crystal frequency to 16&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on '''Settings''' and select the microcontroller '''AVR ATmega16 40-PDIP.''' &lt;br /&gt;
&lt;br /&gt;
Adjust its parameters as shown here.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch in I/O list &amp;gt;&amp;gt; Select PC0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
&lt;br /&gt;
Double-click on YLED in I/O list &amp;gt;&amp;gt; Select PA0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Assign pin '''PC0''' to '''Xswitch''' and pin '''PA0''' to '''YLED'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on Compile &amp;gt;&amp;gt; Click on Compile &amp;gt;&amp;gt; rename it as ‘timeron.hex’ &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Click on Save.&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Compile the logic as '''timeron.hex'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save &amp;gt;&amp;gt; Rename it as ‘timeron.ld’ &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Save the ladder diagram as '''timeron.ld.'''&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 will see the working of this logic on hardware.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect Mainboard to PC using USBasp&lt;br /&gt;
&lt;br /&gt;
laptop-usbasp.jpg&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect the '''Mainboard''' to your laptop using '''USBasp'''.&lt;br /&gt;
&lt;br /&gt;
Turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open terminal &amp;gt;&amp;gt; Type cd Desktop/LDmicro &amp;gt;&amp;gt; Press ENTER &amp;gt;&amp;gt; type ‘'''avrdude -c usbasp -p m16 -U flash:w:timeron.hex’ '''&amp;gt;&amp;gt; Press ENTER&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open the Terminal by pressing '''CTRL+ALT+T''' keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
Go to the folder where you have saved the hex file.&lt;br /&gt;
&lt;br /&gt;
Type the command as shown to upload the hex file to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
&lt;br /&gt;
This will prevent any hardware damage.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| timeron.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us see the connection details now. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| timeron.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect GND''' pin''' of the red LED of '''Traffic Light module''' to GND of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Then connect the '''+5V''' pin of the red LED to '''PA0 '''pin of the Mainboard.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| timeron.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect GND and 5V of '''switchboard''' to GND and 5V of the '''Mainboard''' respectively.&lt;br /&gt;
&lt;br /&gt;
Then connect '''NO1''' of the '''Switchboard''' to '''PC0''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Make the connections as shown in the picture.&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;| After making all the connections properly, turn on the power supply.&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;| Initially the red LED will not glow.&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;| Press the switch '''NO1'''.&lt;br /&gt;
&lt;br /&gt;
Remember '''NO1''' should be pressed for at least 5s for LED to turn ON.&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;| The red LED should turn ON 5s after the '''NO1''' is pressed.&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;| You can use latched action switches to avoid long pressing of switches.&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;| Red LED will go off immediately when you release the switch '''NO1'''.&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;| Thus the LED will glow after the switch is pressed for delay time.&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;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the connections made for this example.&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 will now learn about the working of '''Delayed turn off '''timer.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 6: Delayed turn off timer&lt;br /&gt;
&lt;br /&gt;
* When it is given logic 1 it outputs logic 1 immediately.&lt;br /&gt;
* When given logic 0 it takes at least the delay time provided to output logic 0.&lt;br /&gt;
* Its variable counts up from zero in the units of PLC scan cycle&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| For a delayed turn off timer when given logic 1 it outputs logic 1 immediately.&lt;br /&gt;
&lt;br /&gt;
When given logic 0 it takes at least the delay time provided to output logic 0.&lt;br /&gt;
&lt;br /&gt;
Its variable counts up from zero in the units of PLC scan cycle.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch back to LDmicro.&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;
I’ll open the''' timeroff.ld '''which I have created and saved already.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| timeroff.ld logic on LDmicro interface&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Here, I have replaced the '''Delayed turn on '''timer with '''Delayed turn off''' timer&lt;br /&gt;
&lt;br /&gt;
I have renamed it as '''TOFF '''and given delay as 5s.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Hardware setup before connections&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then compiled the logic as''' ‘timeroff.hex’ '''and uploaded the same to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 7:&lt;br /&gt;
&lt;br /&gt;
Code file - '''timeroff.ld '''&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
* The '''files''' used in this tutorial are available in the '''Code Files '''link on this tutorial page.&lt;br /&gt;
* Please download and extract them&lt;br /&gt;
* Make a copy and then 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;| timeroff.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The connections will be the same as in the '''Delayed turn ON timer''' example.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Hardware setup after connections&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can see that the red LED turns ON immediately after '''NO1''' is pressed.&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;| It will take 5s to turn OFF once you release the switch '''NO1'''.&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;| Thus the LED goes off, after the delay time once the switch is released.&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;| Note the difference between Delayed turn on and Delayed turn off timers.&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 8: Summary&lt;br /&gt;
&lt;br /&gt;
* Delayed turn ON (TON) timer&lt;br /&gt;
* Delayed turn OFF (TOFF) timer&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial we learnt about working of &lt;br /&gt;
&lt;br /&gt;
* '''Delayed turn ON timer''' and&lt;br /&gt;
* '''Delayed turn OFF''' timer&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 9: Assignment&lt;br /&gt;
&lt;br /&gt;
* Draw a ladder diagram to blink an LED.&lt;br /&gt;
* Hint: Use both delayed turn ON and delayed turn OFF timers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
* As an assignment, draw a ladder diagram to blink an LED. &lt;br /&gt;
* Hint: Use both delayed turn ON and delayed turn OFF timers.&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;
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 11:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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 12:&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;| &lt;br /&gt;
* 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 13:&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 14:&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 15:&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C3/Move-Instructions/English</id>
		<title>OpenPLC-version1-with-LDmicro/C3/Move-Instructions/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C3/Move-Instructions/English"/>
				<updated>2020-11-20T09:33:10Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: 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;'''Visual Cue'''&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;hr /&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 '''Move Instruction.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 2: Learning Objectives&lt;br /&gt;
&lt;br /&gt;
* Move (MOV) instruction&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will learn about working of&lt;br /&gt;
&lt;br /&gt;
* Move instruction&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 3: System Requirements&lt;br /&gt;
&lt;br /&gt;
* Ubuntu Linux 18.04''' '''OS&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;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 4: Pre-requisites&lt;br /&gt;
&lt;br /&gt;
* Working of '''One Shot''' and '''Arithmetic''' instructions.&lt;br /&gt;
* If not, please refer to the relevant tutorials 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;| &lt;br /&gt;
* To follow this tutorial, you should know the working of &lt;br /&gt;
&lt;br /&gt;
# '''One Shot''' and &lt;br /&gt;
# '''Arithmetic''' instructions.&lt;br /&gt;
&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;| Slide 5: MOV instruction&lt;br /&gt;
&lt;br /&gt;
MOV instruction copies the value of the source variable to the destination variable.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| MOV instruction copies the value of the source variable to the destination variable.&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;| Let us see the working of '''Move''' instruction in '''LDmicro'''.&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;| Open '''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;| We will create a virtual counter in this tutorial.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click Instructions -&amp;gt; Insert Contact &amp;gt;&amp;gt; Place the cursor to the right of the contact &amp;gt;&amp;gt; Click instructions -&amp;gt; Insert OSR &amp;gt;&amp;gt; Place the cursor to the right of OSR &amp;gt;&amp;gt; Click Instructions -&amp;gt; Arithmetic instructions -&amp;gt; Insert ADD&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Please follow the steps as shown here.&lt;br /&gt;
&lt;br /&gt;
First, insert a '''Contact.'''&lt;br /&gt;
&lt;br /&gt;
To the right of it insert an '''OSR'''.&lt;br /&gt;
&lt;br /&gt;
Next insert '''ADD''' instruction to the right of '''OSR.'''&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 contact &amp;gt;&amp;gt; Type switch in the name box &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the Contact as '''‘switch’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on ADD&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on the '''ADD''' instruction.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type in the destination and ‘is set as := ‘ columns ‘vcounter’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Set the destination and first operand to '''‘vcounter’.'''&lt;br /&gt;
&lt;br /&gt;
'''‘vcounter’''' means virtual counter.&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type 1 in ‘+:’ in the column &amp;gt;&amp;gt; Click the OK button.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Second operand is by default 1. &lt;br /&gt;
&lt;br /&gt;
Don’t change it.&lt;br /&gt;
&lt;br /&gt;
Click the OK button.&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 will now check the working of this logic&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’ &amp;gt;&amp;gt; Click ‘Simulate -&amp;gt; Real-time simulation’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us turn on the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Simulation mode.'''&lt;br /&gt;
&lt;br /&gt;
Next, start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight column state in the I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Observe the state of '''Xswitch''' and '''vcounter''' in the I/O list.&lt;br /&gt;
&lt;br /&gt;
Initially the state of '''Xswitch''' and '''vcounter''' are 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch in the I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Change the state of '''Xswitch''' to 1.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of vcounter&lt;br /&gt;
&lt;br /&gt;
Double-click on Xswitch in the IO list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe the state of '''‘vcounter’''' changes from 0 to 1.&lt;br /&gt;
&lt;br /&gt;
Change the state of '''Xswitch''' to 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch in the I/O list &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Again change the state of '''Xswitch''' to 1.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of vcounter&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe the state of '''‘vcounter’''' changes to 2.&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 means that ‘'''vcounter’''' has the count of number of switch presses.&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;| Just like a counter which tracks the number of switch presses.&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;| What if we want to reset the count?&lt;br /&gt;
&lt;br /&gt;
Let us see how to reset this count value.&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;&amp;gt; Click on Halt simulation Click on Simulate &amp;gt;&amp;gt; Click on Simulation Mode&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Turn off the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Halt Simulation.'''&lt;br /&gt;
&lt;br /&gt;
Then click '''Simulate''' and '''Simulation Mode.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click Edit -&amp;gt; Insert Rung after&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a rung below as shown. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor in the new rung &amp;gt;&amp;gt; Click Instructions -&amp;gt; Insert Contact &amp;gt;&amp;gt; place the cursor to the right of the contact &amp;gt;&amp;gt; Click Instructions -&amp;gt; Insert MOV&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Next we have to insert a '''Contact''' and '''MOV''' instruction in the new rung.&lt;br /&gt;
&lt;br /&gt;
For that, place the cursor in the new rung.&lt;br /&gt;
&lt;br /&gt;
Click on '''Instructions''' and then '''Insert Contact.'''&lt;br /&gt;
&lt;br /&gt;
Place the cursor to the right of the Contact.&lt;br /&gt;
&lt;br /&gt;
Click on '''Instructions''' and then''' Insert MOV'''.&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 contact &amp;gt;&amp;gt; Type reset in the name box &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the Contact as '''‘reset’.'''&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 MOV instruction &amp;gt;&amp;gt; Type vcounter in the destination column &amp;gt;&amp;gt; Type 0 in the source column &amp;gt;&amp;gt; Click the OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on the '''MOV''' instruction.&lt;br /&gt;
&lt;br /&gt;
Set the '''Destination''' variable as '''‘vcounter’''' and '''Source''' variable as 0.&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;| Again start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on Xswitch in the I/O list for 6 times.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Increase the count value, that is, the value of '''‘vcounter’''' to 2.&lt;br /&gt;
&lt;br /&gt;
It can be done by changing the state of '''Xswitch''' from 0 to 1 for 2 times.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xreset in the I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now change the state of '''‘Xreset’''' to 1.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of vcounter&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe the value of '''‘vcounter’''' changes to 0.&lt;br /&gt;
&lt;br /&gt;
Just like resetting a counter.&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;| Thus, Move instruction copies the value of source to destination variable.&lt;br /&gt;
&lt;br /&gt;
Remember that source can be a variable too.&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;&amp;gt; Click on Halt simulation Click on Simulate &amp;gt;&amp;gt; Click on 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;| Click on File &amp;gt;&amp;gt; Click on Save &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘move.ld’ &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Save the ladder diagram as '''move.ld'''.&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 6: Summary&lt;br /&gt;
&lt;br /&gt;
In this tutorial, we learnt about working of&lt;br /&gt;
&lt;br /&gt;
* Move (MOV) instruction &lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we learnt about working of&lt;br /&gt;
&lt;br /&gt;
* Move instruction &lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 7: Evaluation&lt;br /&gt;
&lt;br /&gt;
# Destination can be either a variable or a constant.&lt;br /&gt;
&lt;br /&gt;
* True &lt;br /&gt;
* False&lt;br /&gt;
&lt;br /&gt;
# Source can be either a variable or a constant.&lt;br /&gt;
&lt;br /&gt;
* True&lt;br /&gt;
* False&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Here are some self assessment questions for you.&lt;br /&gt;
&lt;br /&gt;
1 .Destination can be either a variable or a constant&lt;br /&gt;
&lt;br /&gt;
True or False&lt;br /&gt;
&lt;br /&gt;
2. Source can be either a variable or a constant.&lt;br /&gt;
&lt;br /&gt;
True or False&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 8: Answers&lt;br /&gt;
&lt;br /&gt;
1 - False&lt;br /&gt;
&lt;br /&gt;
2 - True&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now let us look at the answers.&lt;br /&gt;
&lt;br /&gt;
The answer to the first question is False.&lt;br /&gt;
&lt;br /&gt;
The answer to the second question is True.&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;
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 10:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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 11:&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;| * 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 12:&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 13:&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 14:&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C3/Arithmetic-Instructions/English</id>
		<title>OpenPLC-version1-with-LDmicro/C3/Arithmetic-Instructions/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C3/Arithmetic-Instructions/English"/>
				<updated>2020-11-20T05:04:56Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: Created page with &amp;quot; {| style=&amp;quot;border-spacing:0;&amp;quot; | style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &amp;lt;center&amp;gt;'''Visual Cue'''&amp;lt;/center&amp;gt; | style=&amp;quot;background-color:#ffffff...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{| style=&amp;quot;border-spacing:0;&amp;quot;&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &amp;lt;center&amp;gt;'''Visual Cue'''&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 1: &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Welcome to the spoken tutorial on '''Arithmetic''' '''Instructions'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 2: Learning Objectives&lt;br /&gt;
&lt;br /&gt;
* Arithmetic instructions&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| In this tutorial we’ll learn about &lt;br /&gt;
&lt;br /&gt;
* Arithmetic instructions&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 3: System Requirements&lt;br /&gt;
&lt;br /&gt;
* Ubuntu 18.04''' '''operating system&lt;br /&gt;
* LDmicro&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 4: Pre-requisites&lt;br /&gt;
&lt;br /&gt;
* Working of One Shot instructions&lt;br /&gt;
* If not, please refer to the relevant tutorials from [https://spoken-tutorial.org/ Home | spoken-tutorial.org]&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
* To follow this tutorial, you should know the working '''One Shot''' instructions.&lt;br /&gt;
&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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 5a: Arithmetic instructions&lt;br /&gt;
&lt;br /&gt;
* Four arithmetic instructions&lt;br /&gt;
&lt;br /&gt;
# ADD&lt;br /&gt;
# SUB&lt;br /&gt;
# MUL&lt;br /&gt;
# DIV&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| '''LDmicro''' has 4 Arithmetic instructions.&lt;br /&gt;
&lt;br /&gt;
They are Add, Subtract, Multiply and Divide.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 5b: Arithmetic instructions&lt;br /&gt;
&lt;br /&gt;
* Can only handle 16-bit signed integer values&lt;br /&gt;
* Floating point numbers are not handled by these instructions&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| In '''LDmicro''', these instructions can handle only up to 16 bit signed integer values.&lt;br /&gt;
&lt;br /&gt;
Floating point numbers are not handled by these instructions.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now, we’ll learn about working of these instructions.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Open LDmicro&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Let us open '''LDmicro'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Let us start with an example of the '''ADD''' instruction.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click Instructions -&amp;gt; Insert Contact &amp;gt;&amp;gt; Place the cursor to the right of the contact &amp;gt;&amp;gt; Click ‘Instructions -&amp;gt; Click on Arithmetic operator -&amp;gt; Insert ADD&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| First, place a Contact from Instructions.&lt;br /&gt;
&lt;br /&gt;
Next to the right of it insert an '''ADD''' instruction as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on contact &amp;gt;&amp;gt; Type switch in name box &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Rename the Contact as '''‘switch’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on ADD &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now, double click on the '''ADD''' instruction.&lt;br /&gt;
&lt;br /&gt;
A dialog box opens which has three inputs.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Highlight Destination&lt;br /&gt;
&lt;br /&gt;
Enter ‘result’&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| First, we have '''Destination'''.&lt;br /&gt;
&lt;br /&gt;
It should be the variable name to which you want to save the result.&lt;br /&gt;
&lt;br /&gt;
Enter the variable name as '''‘result’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Highlight ‘is set to := :’ and ‘+ :’&lt;br /&gt;
&lt;br /&gt;
Type 4 in ‘is set to :=’ column &lt;br /&gt;
&lt;br /&gt;
Type 5 in ‘+:’ column&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Then the next two columns are operands.&lt;br /&gt;
&lt;br /&gt;
These can be either constants or variables.&lt;br /&gt;
&lt;br /&gt;
Enter the operands as 4 and 5 respectively.&lt;br /&gt;
&lt;br /&gt;
Click on the OK button.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Highlight ‘result’ in I/O list&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Observe that the type of '''‘result’''' is shown as a general variable.&lt;br /&gt;
&lt;br /&gt;
Also we can observe that there is no prefix before its name.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Note that the variables can also be timer and counter variables. &lt;br /&gt;
&lt;br /&gt;
We will learn about these variables in the later tutorials.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We will now check the working of this logic.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click Simulate -&amp;gt; Simulation mode &amp;gt;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Click Simulate -&amp;gt; Real-time simulation&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Let us turn on the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on S'''imulation mode.'''&lt;br /&gt;
&lt;br /&gt;
Next, start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Highlight Xswitch and result in the IO list&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Initially the state of '''Xswitch''' and '''result''' are 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on ‘Xswitch’ &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Change the state of '''Xswitch''' to 1.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Highlight the state of the ‘result’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We can observe the value of variable '''‘result’''' changes to 9.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on Simulate &amp;gt;&amp;gt; Click on Halt simulation &amp;gt;&amp;gt; Click on Simulation Mode&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Turn off the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Halt Simulation.'''&lt;br /&gt;
&lt;br /&gt;
Then click '''Simulate''' and '''Simulation Mode.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on ADD &amp;gt;&amp;gt; Change second operand to 40000 &amp;gt;&amp;gt; Click the OK button&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Change the second operand in the ADD instruction to 40000.&lt;br /&gt;
&lt;br /&gt;
Click the '''OK''' button.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click Simulate -&amp;gt; Simulation mode &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Turn on the Simulation mode.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Highlight the text ‘Constant 40000 out of range: -32768 to -32767’&lt;br /&gt;
&lt;br /&gt;
Click the OK button&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| A dialog box appears.&lt;br /&gt;
&lt;br /&gt;
It says '''‘Constant 40000 out of range: -32768 to 32767 inclusive’.'''&lt;br /&gt;
&lt;br /&gt;
This means that operands should be signed 16 bit integers.&lt;br /&gt;
&lt;br /&gt;
Click the OK button.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on ADD &amp;gt;&amp;gt; Change second operand to 32767 &amp;gt;&amp;gt; Click the OK button&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now change the second operand to 32767 as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click Simulate -&amp;gt; Simulation mode &amp;gt;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Click Simulate -&amp;gt; Real-time simulation&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Start real-time simulation.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on Xswitch&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Change the state of '''Xswitch''' to 1.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Highlight the state of the ‘result’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We can observe that the value of the '''‘result’''' changes to '''‘-32765’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| That is, the result of the '''ADD '''operation is also a signed 16-bit integer.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on ‘switch’ in the IO list &amp;gt;&amp;gt; Double-click on ‘switch’ in the IO list &amp;gt;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Highlight the state of the ‘result’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Change the state of '''Xswitch''' to 0 and then again to 1.&lt;br /&gt;
&lt;br /&gt;
We can observe that the state of the variable '''‘result’''' doesn't change.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Thus the ADD operation happens only once.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now, we will try to increment a variable on every switch press.&lt;br /&gt;
&lt;br /&gt;
Also, we will understand the importance of '''One shot '''instructions.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on Halt simulation &amp;gt;&amp;gt; Click on Simulation Mode&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Turn off the simulation mode as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on ADD &amp;gt;&amp;gt; Change second operand to result &amp;gt;&amp;gt; Click the OK button&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double click on the ADD instruction.&lt;br /&gt;
&lt;br /&gt;
Change the second operand to variable '''‘result’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click Simulate -&amp;gt; Simulation mode &amp;gt;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Click Simulate -&amp;gt; Real-time simulation&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on ‘switch’ in the IO list&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Change the state of '''Xswitch''' to 1.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Highlight the state of the ‘result’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We can observe that the value of '''‘result’''' keeps changing rapidly. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| It keeps updating until the state of '''Xswitch''' is 1.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on Halt simulation &amp;gt;&amp;gt; Click on Simulation Mode&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Turn off the simulation mode.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide: How can we prevent PLC from evaluating the instruction on each cycle?&lt;br /&gt;
&lt;br /&gt;
We can do that by using a '''One Shot''' instruction.&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| How can we prevent PLC from evaluating the instruction on each cycle?&lt;br /&gt;
&lt;br /&gt;
We can do that by using a '''One Shot''' instruction.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Let us try doing this on LDmicro.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Place the cursor to the right of the contact &amp;gt;&amp;gt; Click on Instructions -&amp;gt; Insert OSR&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Place an '''OSR''' to the right of '''Xswitch'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click Simulate -&amp;gt; Simulation mode &amp;gt;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Click Simulate -&amp;gt; Real-time simulation&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Start real-time simulation.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on ‘switch’ in the IO list&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Change the state of '''Xswitch''' from 0 to 1.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Highlight the state of the ‘result’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We can observe that the state of the variable '''‘result’''' changes to 4.&lt;br /&gt;
&lt;br /&gt;
That is, ADD operation happens only once.&lt;br /&gt;
&lt;br /&gt;
Change the state of '''Xswitch''' back to 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Again change the state of '''Xswitch''' from 0 to 1.&lt;br /&gt;
&lt;br /&gt;
We can observe that the state of the''' 'result'''' changes to 8.&lt;br /&gt;
&lt;br /&gt;
That is, ADD operation happens only when input changes its state from low to high.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on Simulate &amp;gt;&amp;gt; Click on Halt simulation Click on Simulate &amp;gt;&amp;gt; Click on Simulation Mode&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Turn off the simulation mode.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘add.ld’ &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Save the ladder diagram as '''add.ld'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 6: Assignment&lt;br /&gt;
&lt;br /&gt;
Replace an '''OSF''' in the place of '''OSR'''. Observe the '''‘result’''' variable.&lt;br /&gt;
&lt;br /&gt;
'''Observation:'''&lt;br /&gt;
&lt;br /&gt;
The value changes when the input goes from high to low.&lt;br /&gt;
&lt;br /&gt;
That is when the state of Xswitch goes from 1 to 0.&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| As an Assignment,&lt;br /&gt;
&lt;br /&gt;
Replace an '''OSF''' in the place of '''OSR''' and observe the '''‘result’''' variable.&lt;br /&gt;
&lt;br /&gt;
'''Observation:'''&lt;br /&gt;
&lt;br /&gt;
The value changes when the input goes from high to low.&lt;br /&gt;
&lt;br /&gt;
That is when the state of '''Xswitch''' goes from 1 to 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 7: When to use OSR/OSF?&lt;br /&gt;
&lt;br /&gt;
* Use OSR, when you want the change in count to happen when the switch is pressed&lt;br /&gt;
* Use OSF, when you want the change to happen when the switch is released&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| When to use OSR or OSF?&lt;br /&gt;
&lt;br /&gt;
* Use OSR, when you want the change in count to happen when the switch is pressed&lt;br /&gt;
* Use OSF, when you want the change to happen when the switch is released&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Next, we will look at other Arithmetic instructions.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 8: Arithmetic Instructions&lt;br /&gt;
&lt;br /&gt;
* SUB, MUL and DIV work similar to ADD&lt;br /&gt;
* NOTE: DIV instruction gives quotient as the result&lt;br /&gt;
* Explore these instructions on your own.&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| The instructions subtract, multiply, and divide work in the similar way as of addition.&lt;br /&gt;
&lt;br /&gt;
Note that the Divide instruction gives quotient as the result.&lt;br /&gt;
&lt;br /&gt;
Explore these instructions on your own.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 9: Summary&lt;br /&gt;
&lt;br /&gt;
* Arithmetic instructions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| In this tutorial, we learnt about&lt;br /&gt;
&lt;br /&gt;
* Arithmetic instructions&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 10:&lt;br /&gt;
&lt;br /&gt;
About Spoken Tutorial project&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 11:&lt;br /&gt;
&lt;br /&gt;
Spoken Tutorial workshops&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| The''' Spoken Tutorial Project''' team:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 12:&lt;br /&gt;
&lt;br /&gt;
Forum for specific questions:&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 13:&lt;br /&gt;
&lt;br /&gt;
Forum for specific questions:&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 14:&lt;br /&gt;
&lt;br /&gt;
Acknowledgement&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 15:&lt;br /&gt;
&lt;br /&gt;
Thank you slide&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C3/OneShot-Instructions/English</id>
		<title>OpenPLC-version1-with-LDmicro/C3/OneShot-Instructions/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C3/OneShot-Instructions/English"/>
				<updated>2020-11-20T04:41:53Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{| style=&amp;quot;border-spacing:0;&amp;quot;&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &amp;lt;center&amp;gt;'''Visual Cue'''&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 1: &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Welcome to the spoken tutorial on '''OneShot''' - '''Instructions.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 2: Learning Objectives&lt;br /&gt;
&lt;br /&gt;
* One Shot Rising (OSR)&lt;br /&gt;
* One Shot Falling (OSF)&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| In this tutorial we’ll learn about &lt;br /&gt;
&lt;br /&gt;
* '''One Shot Rising''' and &lt;br /&gt;
* '''One Shot Falling '''instructions&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 3: System Requirements&lt;br /&gt;
&lt;br /&gt;
* Ubuntu 18.04''' '''OS&lt;br /&gt;
* LDmicro&lt;br /&gt;
* OpenPLC version 1 Mainboard&lt;br /&gt;
* 24V, 2A SMPS&lt;br /&gt;
* USBasp programmer&lt;br /&gt;
* Traffic Light module&lt;br /&gt;
* Switchboard module&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;
* '''OpenPLC version1 Mainboard'''&lt;br /&gt;
* '''24V, 2A SMPS'''&lt;br /&gt;
* '''USBasp''' programmer&lt;br /&gt;
* '''Traffic Light''' module and&lt;br /&gt;
* '''Switchboard''' module&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 4: Pre-requisites&lt;br /&gt;
&lt;br /&gt;
* Working of Normal Contact and Normal Coil&lt;br /&gt;
* If not, please refer to the relevant tutorials from [https://spoken-tutorial.org/ Home | spoken-tutorial.org]&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| To follow this tutorial, you should know the working of &lt;br /&gt;
&lt;br /&gt;
* '''Normal Contact''' and '''Normal Coil'''.&lt;br /&gt;
&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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 5: Prerequisites - Hardware setup&lt;br /&gt;
&lt;br /&gt;
hardware-prerequisite.jpg&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Connect''' SMPS''' and '''USBasp''' to the '''Mainboard''' as shown in the picture.&lt;br /&gt;
&lt;br /&gt;
Keep these connections throughout this tutorial.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Open the LDmicro &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Let us open '''LDmicro'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| First we’ll see the working of an '''OSR''' instruction.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Insert ‘Instructions -&amp;gt; Insert Contact’ &amp;gt;&amp;gt; Place the cursor to the right of the contact &amp;gt;&amp;gt; Insert ‘Instructions -&amp;gt; Insert Coil’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Insert a '''Contact''' and a '''Coil''' as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on contact &amp;gt;&amp;gt; Type switch in name box &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
&lt;br /&gt;
Double click on the coil &amp;gt;&amp;gt; Rename it as ‘LED1’ &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Rename the Contact as '''‘switch’''' and rename the Coil as '''‘LED’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Place the cursor to the right of the contact &amp;gt;&amp;gt; Click ‘Instructions -&amp;gt; Insert OSR instruction’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Add an '''OSR''' instruction to the right of '''Xswitch'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We will now check the working of this logic.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click Simulate -&amp;gt; Simulation mode &amp;gt;&amp;gt; Click Simulate -&amp;gt; Real-time simulation&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Let us turn on the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Simulation mode.'''&lt;br /&gt;
&lt;br /&gt;
Next, start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Observe the state of '''Xswitch''' and '''YLED''' in the I/O list.&lt;br /&gt;
&lt;br /&gt;
Initially the state of both '''Xswitch''' and '''YLED''' are 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on ‘Xswitch’ in the I/O list&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Change the state of '''‘Xswitch’''' to 1.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Highlight rung&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We can notice that '''YLED''' energises for a brief moment.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| This is because '''OSR''' generates a pulse on each rising edge of its input signal.&lt;br /&gt;
&lt;br /&gt;
The pulse width is equal to one '''PLC''' scan cycle.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| For a close observation, let us increase the '''PLC''' cycle time.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on Simulate -&amp;gt; Halt simulation &amp;gt;&amp;gt; Click on Simulate -&amp;gt; Simulation Mode&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now, turn off the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Halt Simulation.'''&lt;br /&gt;
&lt;br /&gt;
Then click '''Simulate''' and '''Simulation Mode.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on Settings -&amp;gt; MCU parameters &amp;gt;&amp;gt; Set cycle time to 5000 ms &amp;gt;&amp;gt; Click the OK button&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on '''Settings''' and then on '''MCU parameters.'''&lt;br /&gt;
&lt;br /&gt;
Change the '''‘cycle''' '''time’''' to '''‘3000''' '''ms’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click Simulate -&amp;gt; Simulation mode &amp;gt;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Click Simulate -&amp;gt; Real-time simulation&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now again start real-time simulation.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on ‘Xswitch’ &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Change the state of '''Xswitch''' to 1.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Highlight rung&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We can observe that within 3s '''YLED '''will get energised.&lt;br /&gt;
&lt;br /&gt;
Also it stays energised for about 3 seconds. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on ‘Xswitch’ in the I/O list&lt;br /&gt;
&lt;br /&gt;
Highlight state of YLED in the I/O list&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| After that, change the state of '''Xswitch''' to 0.&lt;br /&gt;
&lt;br /&gt;
We can see that the falling edge has no effect on the state of '''YLED'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on Simulate -&amp;gt; Halt simulation &amp;gt;&amp;gt; Click on Simulate -&amp;gt; Simulation Mode&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Turn off the simulation mode as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now let us compile the logic.&lt;br /&gt;
&lt;br /&gt;
The detailed steps on how to compile and save the logic are explained in the earlier tutorials. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on Settings &amp;gt;&amp;gt; Click on Microcontroller &amp;gt;&amp;gt; Select AVR ATmega16 40-PDIP &lt;br /&gt;
&lt;br /&gt;
Click on Settings &amp;gt;&amp;gt; Click on MCU parameters &amp;gt;&amp;gt; Change Crystal frequency to 16&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on '''Settings''' and select the microcontroller '''AVR ATmega16 40-PDIP.''' &lt;br /&gt;
&lt;br /&gt;
Adjust its parameters as shown here.&lt;br /&gt;
&lt;br /&gt;
Let the cycle time be 3000ms and change crystal frequency to 16 MHz.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on Xswitch in I/O list &amp;gt;&amp;gt; Select PC0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
&lt;br /&gt;
Double-click on YLED in I/O list &amp;gt;&amp;gt; Select PA0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Assign pin '''PC0''' to '''Xswitch.'''&lt;br /&gt;
&lt;br /&gt;
Then assign pin '''PA0''' to '''YLED'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on Compile &amp;gt;&amp;gt; Click on Compile &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘osr.hex’ &amp;gt;&amp;gt; Click on Save.&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Compile the logic as '''‘osr.hex’.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘osr.ld’ &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Save the ladder diagram as '''osr.ld''' as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We will now see the working of this logic on hardware.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Connect Mainboard to PC using USBasp&lt;br /&gt;
&lt;br /&gt;
laptop-usbasp.jpg&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Connect the '''Mainboard''' to your laptop using '''USBasp'''.&lt;br /&gt;
&lt;br /&gt;
Turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Open terminal &amp;gt;&amp;gt; Type cd Desktop/LDmicro &amp;gt;&amp;gt; Press ENTER &amp;gt;&amp;gt; type ‘'''avrdude -c usbasp -p m16 -U flash:w:osr.hex’ '''&amp;gt;&amp;gt; Press ENTER&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Open the Terminal by pressing '''CTRL+ALT+T''' keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
Go to the folder where you have saved the hex file.&lt;br /&gt;
&lt;br /&gt;
Type the command as shown to upload the hex file to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
&lt;br /&gt;
This will prevent any hardware damage.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| osr.png&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Let us see the connection details now. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| osr.png&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Connect '''GND''' pin of the red LED of '''Traffic Light''' module to '''GND''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Then connect '''+5V pin''' of the red LED to '''PA0''' pin of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| osr.png&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Connect '''GND''' and 5V of '''switchboard''' to GND and 5V of the '''Mainboard''' respectively.&lt;br /&gt;
&lt;br /&gt;
Then connect '''NO1''' of the '''Switchboard''' to '''PC0''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Make the connections as shown in the picture.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| After making all the connections properly, turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Press NO1 for about 3 seconds.&lt;br /&gt;
&lt;br /&gt;
After releasing the switch NO1, the red LED glows for about 3 seconds.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| The time for which the LED glows depends on PLC cycle time or scan cycle.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the connections made for this example.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now, we’ll look at the working of '''OSF''' instruction.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Switch back to LDmicro&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Switch back to '''LDmicro'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Instead of creating a new file, we will make changes in the previous file itself.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We will replace '''OSR''' with '''OSF''' instruction.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Select OSR &amp;gt;&amp;gt; Click ‘Edit -&amp;gt; Delete selected element’ &amp;gt;&amp;gt; Click on ‘instructions -&amp;gt; Insert OSF’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| For that, select '''OSR''' then click ‘Edit -&amp;gt; Delete selected element’.&lt;br /&gt;
&lt;br /&gt;
Now, to the right of '''Xswitch''' insert '''OSF''' as shown. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We will now check the working of this logic.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click Simulate -&amp;gt; Simulation mode &amp;gt;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Click Simulate -&amp;gt; Real-time simulation&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Initially the state of both '''Xswitch''' and '''YLED''' are 0&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double click on Xswitch &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now, change the state of '''Xswitch''' to 1.&lt;br /&gt;
&lt;br /&gt;
We can observe there is no change in the state of '''YLED'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Change the state of '''Xswitch''' to 0.&lt;br /&gt;
&lt;br /&gt;
We can observe that the state of '''YLED''' changes to 1 for about 3 seconds.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Highlight cycle time at the bottom of the screen&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Remember that, we have changed the cycle time to 3s.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Highlight the rung&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Thus '''OSF''' generates the pulse on each falling edge of its input signal.&lt;br /&gt;
&lt;br /&gt;
Note that rising edge doesn’t have any effect on it.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on Simulate -&amp;gt; Halt simulation &amp;gt;&amp;gt; Click on Simulate -&amp;gt; Simulation Mode&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Turn off the simulation mode as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now let us compile the logic.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Highlight I/O list and status bar&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We can observe that microcontroller and its parameters are already set.&lt;br /&gt;
&lt;br /&gt;
Pin assignment is also already done.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on Compile &amp;gt;&amp;gt; Click on Compile As &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘osf.hex’ &amp;gt;&amp;gt; Click on Save.&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Compile the logic as '''osf.hex '''using the '''‘Compile As’''' option.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save As &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘osf.ld’ &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Save the ladder diagram as '''‘osf.ld’''' using the '''‘Save As’ '''option.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We will now see the working of this logic on hardware.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Connect Mainboard to PC using USBasp&lt;br /&gt;
&lt;br /&gt;
laptop-usbasp.jpg&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Connect the '''Mainboard''' to your laptop using '''USBasp'''.&lt;br /&gt;
&lt;br /&gt;
Turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Open terminal &amp;gt;&amp;gt; Type cd Desktop/LDmicro &amp;gt;&amp;gt; Press ENTER &amp;gt;&amp;gt; type ‘'''avrdude -c usbasp -p m16 -U flash:w:osf.hex’ '''&amp;gt;&amp;gt; Press ENTER&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Switch back to the terminal.&lt;br /&gt;
&lt;br /&gt;
Go to the folder where you have saved the hex file.&lt;br /&gt;
&lt;br /&gt;
Type the command as shown to upload the hex file to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
&lt;br /&gt;
This will prevent any hardware damage.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| osf.png&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Let us see the connection details now. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| osf.png&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Make the connections the same as in the '''OSR''' example.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| After making all the connections properly, turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Press the switch NO1.&lt;br /&gt;
&lt;br /&gt;
After the switch NO1 is released, we can observe that the red LED glows for about 3s.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Thus the LED glows for PLC scan cycle time, only after '''NO1''' is released.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 5: Summary&lt;br /&gt;
&lt;br /&gt;
* One Shot Rising (OSR)&lt;br /&gt;
* One Shot Falling (OSF)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| In this tutorial, we learnt about&lt;br /&gt;
&lt;br /&gt;
* One Shot Rising (OSR) and&lt;br /&gt;
* One Shot Falling (OSF) instructions&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 6: Assignment&lt;br /&gt;
&lt;br /&gt;
Draw a ladder diagram to detect both rising and falling edge of the input signal&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Try this assignment.&lt;br /&gt;
&lt;br /&gt;
Draw a ladder diagram to detect both rising and falling edge of the input signal.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 7:&lt;br /&gt;
&lt;br /&gt;
About Spoken Tutorial project&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 8:&lt;br /&gt;
&lt;br /&gt;
Spoken Tutorial workshops&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| The''' Spoken Tutorial Project''' team:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 9:&lt;br /&gt;
&lt;br /&gt;
Forum for specific questions:&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 10:&lt;br /&gt;
&lt;br /&gt;
Forum for specific questions:&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 11: Acknowledgement&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 12: Thank you slide&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C3/OneShot-Instructions/English</id>
		<title>OpenPLC-version1-with-LDmicro/C3/OneShot-Instructions/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C3/OneShot-Instructions/English"/>
				<updated>2020-11-20T04:40:07Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: Created page with &amp;quot; {| style=&amp;quot;border-spacing:0;&amp;quot; | style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &amp;lt;center&amp;gt;'''Visual Cue'''&amp;lt;/center&amp;gt; | style=&amp;quot;background-color:#ffffff...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{| style=&amp;quot;border-spacing:0;&amp;quot;&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &amp;lt;center&amp;gt;'''Visual Cue'''&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 1: &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Welcome to the spoken tutorial on '''OneShot''' - '''Instructions.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 2: Learning Objectives&lt;br /&gt;
&lt;br /&gt;
* One Shot Rising (OSR)&lt;br /&gt;
* One Shot Falling (OSF)&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| In this tutorial we’ll learn about &lt;br /&gt;
&lt;br /&gt;
* '''One Shot Rising''' and &lt;br /&gt;
* '''One Shot Falling '''instructions&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 3: System Requirements&lt;br /&gt;
&lt;br /&gt;
* Ubuntu 18.04''' '''OS&lt;br /&gt;
* LDmicro&lt;br /&gt;
* OpenPLC version 1 Mainboard&lt;br /&gt;
* 24V, 2A SMPS&lt;br /&gt;
* USBasp programmer&lt;br /&gt;
* Traffic Light module&lt;br /&gt;
* Switchboard module&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;
* '''OpenPLC version1 Mainboard'''&lt;br /&gt;
* '''24V, 2A SMPS'''&lt;br /&gt;
* '''USBasp''' programmer&lt;br /&gt;
* '''Traffic Light''' module and&lt;br /&gt;
* '''Switchboard''' module&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 4: Pre-requisites&lt;br /&gt;
&lt;br /&gt;
* Working of Normal Contact and Normal Coil&lt;br /&gt;
* If not, please refer to the relevant tutorials from [https://spoken-tutorial.org/ Home | spoken-tutorial.org]&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| To follow this tutorial, you should know the working of &lt;br /&gt;
&lt;br /&gt;
* '''Normal Contact''' and '''Normal Coil'''.&lt;br /&gt;
&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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 5: Prerequisites - Hardware setup&lt;br /&gt;
&lt;br /&gt;
hardware-prerequisite.jpg&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Connect''' SMPS''' and '''USBasp''' to the '''Mainboard''' as shown in the picture.&lt;br /&gt;
&lt;br /&gt;
Keep these connections throughout this tutorial.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Open the LDmicro &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Let us open '''LDmicro'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| First we’ll see the working of an '''OSR''' instruction.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Insert ‘Instructions -&amp;gt; Insert Contact’ &amp;gt;&amp;gt; Place the cursor to the right of the contact &amp;gt;&amp;gt; Insert ‘Instructions -&amp;gt; Insert Coil’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Insert a '''Contact''' and a '''Coil''' as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on contact &amp;gt;&amp;gt; Type switch in name box &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
&lt;br /&gt;
Double click on the coil &amp;gt;&amp;gt; Rename it as ‘LED1’ &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Rename the Contact as '''‘switch’''' and rename the Coil as '''‘LED’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Place the cursor to the right of the contact &amp;gt;&amp;gt; Click ‘Instructions -&amp;gt; Insert OSR instruction’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Add an '''OSR''' instruction to the right of '''Xswitch'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We will now check the working of this logic.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click Simulate -&amp;gt; Simulation mode &amp;gt;&amp;gt; Click Simulate -&amp;gt; Real-time simulation&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Let us turn on the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Simulation mode.'''&lt;br /&gt;
&lt;br /&gt;
Next, start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Observe the state of '''Xswitch''' and '''YLED''' in the I/O list.&lt;br /&gt;
&lt;br /&gt;
Initially the state of both '''Xswitch''' and '''YLED''' are 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on ‘Xswitch’ in the I/O list&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Change the state of '''‘Xswitch’''' to 1.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Highlight rung&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We can notice that '''YLED''' energises for a brief moment.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| This is because '''OSR''' generates a pulse on each rising edge of its input signal.&lt;br /&gt;
&lt;br /&gt;
The pulse width is equal to one '''PLC''' scan cycle.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| For a close observation, let us increase the '''PLC''' cycle time.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on Simulate -&amp;gt; Halt simulation &amp;gt;&amp;gt; Click on Simulate -&amp;gt; Simulation Mode&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now, turn off the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Halt Simulation.'''&lt;br /&gt;
&lt;br /&gt;
Then click '''Simulate''' and '''Simulation Mode.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on Settings -&amp;gt; MCU parameters &amp;gt;&amp;gt; Set cycle time to 5000 ms &amp;gt;&amp;gt; Click the OK button&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on '''Settings''' and then on '''MCU parameters.'''&lt;br /&gt;
&lt;br /&gt;
Change the '''‘cycle''' '''time’''' to '''‘3000''' '''ms’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click Simulate -&amp;gt; Simulation mode &amp;gt;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Click Simulate -&amp;gt; Real-time simulation&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now again start real-time simulation.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on ‘Xswitch’ &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Change the state of '''Xswitch''' to 1.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Highlight rung&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We can observe that within 3s '''YLED '''will get energised.&lt;br /&gt;
&lt;br /&gt;
Also it stays energised for about 3 seconds. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on ‘Xswitch’ in the I/O list&lt;br /&gt;
&lt;br /&gt;
Highlight state of YLED in the I/O list&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| After that, change the state of '''Xswitch''' to 0.&lt;br /&gt;
&lt;br /&gt;
We can see that the falling edge has no effect on the state of '''YLED'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on Simulate -&amp;gt; Halt simulation &amp;gt;&amp;gt; Click on Simulate -&amp;gt; Simulation Mode&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Turn off the simulation mode as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now let us compile the logic.&lt;br /&gt;
&lt;br /&gt;
The detailed steps on how to compile and save the logic are explained in the earlier tutorials. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on Settings &amp;gt;&amp;gt; Click on Microcontroller &amp;gt;&amp;gt; Select AVR ATmega16 40-PDIP &lt;br /&gt;
&lt;br /&gt;
Click on Settings &amp;gt;&amp;gt; Click on MCU parameters &amp;gt;&amp;gt; Change Crystal frequency to 16&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on '''Settings''' and select the microcontroller '''AVR ATmega16 40-PDIP.''' &lt;br /&gt;
&lt;br /&gt;
Adjust its parameters as shown here.&lt;br /&gt;
&lt;br /&gt;
Let the cycle time be 3000ms and change crystal frequency to 16 MHz.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on Xswitch in I/O list &amp;gt;&amp;gt; Select PC0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
&lt;br /&gt;
Double-click on YLED in I/O list &amp;gt;&amp;gt; Select PA0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Assign pin '''PC0''' to '''Xswitch.'''&lt;br /&gt;
&lt;br /&gt;
Then assign pin '''PA0''' to '''YLED'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on Compile &amp;gt;&amp;gt; Click on Compile &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘osr.hex’ &amp;gt;&amp;gt; Click on Save.&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Compile the logic as '''‘osr.hex’.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘osr.ld’ &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Save the ladder diagram as '''osr.ld''' as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We will now see the working of this logic on hardware.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Connect Mainboard to PC using USBasp&lt;br /&gt;
&lt;br /&gt;
laptop-usbasp.jpg&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Connect the '''Mainboard''' to your laptop using '''USBasp'''.&lt;br /&gt;
&lt;br /&gt;
Turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Open terminal &amp;gt;&amp;gt; Type cd Desktop/LDmicro &amp;gt;&amp;gt; Press ENTER &amp;gt;&amp;gt; type ‘'''avrdude -c usbasp -p m16 -U flash:w:osr.hex’ '''&amp;gt;&amp;gt; Press ENTER&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Open the Terminal by pressing '''CTRL+ALT+T''' keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
Go to the folder where you have saved the hex file.&lt;br /&gt;
&lt;br /&gt;
Type the command as shown to upload the hex file to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Text box: Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
&lt;br /&gt;
This will prevent any hardware damage.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| osr.png&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Let us see the connection details now. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| osr.png&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Connect '''GND''' pin of the red LED of '''Traffic Light''' module to '''GND''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Then connect '''+5V pin''' of the red LED to '''PA0''' pin of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| osr.png&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Connect '''GND''' and 5V of '''switchboard''' to GND and 5V of the '''Mainboard''' respectively.&lt;br /&gt;
&lt;br /&gt;
Then connect '''NO1''' of the '''Switchboard''' to '''PC0''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Make the connections as shown in the picture.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| After making all the connections properly, turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Point to the output&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Press NO1 for about 3 seconds.&lt;br /&gt;
&lt;br /&gt;
After releasing the switch NO1, the red LED glows for about 3 seconds.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| The time for which the LED glows depends on PLC cycle time or scan cycle.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the connections made for this example.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now, we’ll look at the working of '''OSF''' instruction.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Switch back to LDmicro&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Switch back to '''LDmicro'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Instead of creating a new file, we will make changes in the previous file itself.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We will replace '''OSR''' with '''OSF''' instruction.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Select OSR &amp;gt;&amp;gt; Click ‘Edit -&amp;gt; Delete selected element’ &amp;gt;&amp;gt; Click on ‘instructions -&amp;gt; Insert OSF’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| For that, select '''OSR''' then click ‘Edit -&amp;gt; Delete selected element’.&lt;br /&gt;
&lt;br /&gt;
Now, to the right of '''Xswitch''' insert '''OSF''' as shown. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We will now check the working of this logic.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click Simulate -&amp;gt; Simulation mode &amp;gt;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Click Simulate -&amp;gt; Real-time simulation&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Initially the state of both '''Xswitch''' and '''YLED''' are 0&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double click on Xswitch &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now, change the state of '''Xswitch''' to 1.&lt;br /&gt;
&lt;br /&gt;
We can observe there is no change in the state of '''YLED'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Change the state of '''Xswitch''' to 0.&lt;br /&gt;
&lt;br /&gt;
We can observe that the state of '''YLED''' changes to 1 for about 3 seconds.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Highlight cycle time at the bottom of the screen&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Remember that, we have changed the cycle time to 3s.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Highlight the rung&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Thus '''OSF''' generates the pulse on each falling edge of its input signal.&lt;br /&gt;
&lt;br /&gt;
Note that rising edge doesn’t have any effect on it.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on Simulate -&amp;gt; Halt simulation &amp;gt;&amp;gt; Click on Simulate -&amp;gt; Simulation Mode&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Turn off the simulation mode as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now let us compile the logic.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Highlight I/O list and status bar&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We can observe that microcontroller and its parameters are already set.&lt;br /&gt;
&lt;br /&gt;
Pin assignment is also already done.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on Compile &amp;gt;&amp;gt; Click on Compile As &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘osf.hex’ &amp;gt;&amp;gt; Click on Save.&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Compile the logic as '''osf.hex '''using the '''‘Compile As’''' option.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save As &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘osf.ld’ &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Save the ladder diagram as '''‘osf.ld’''' using the '''‘Save As’ '''option.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We will now see the working of this logic on hardware.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Connect Mainboard to PC using USBasp&lt;br /&gt;
&lt;br /&gt;
laptop-usbasp.jpg&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Connect the '''Mainboard''' to your laptop using '''USBasp'''.&lt;br /&gt;
&lt;br /&gt;
Turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Open terminal &amp;gt;&amp;gt; Type cd Desktop/LDmicro &amp;gt;&amp;gt; Press ENTER &amp;gt;&amp;gt; type ‘'''avrdude -c usbasp -p m16 -U flash:w:osf.hex’ '''&amp;gt;&amp;gt; Press ENTER&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Switch back to the terminal.&lt;br /&gt;
&lt;br /&gt;
Go to the folder where you have saved the hex file.&lt;br /&gt;
&lt;br /&gt;
Type the command as shown to upload the hex file to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
&lt;br /&gt;
This will prevent any hardware damage.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| osf.png&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Let us see the connection details now. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| osf.png&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Make the connections the same as in the '''OSR''' example.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| After making all the connections properly, turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Press the switch NO1.&lt;br /&gt;
&lt;br /&gt;
After the switch NO1 is released, we can observe that the red LED glows for about 3s.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Thus the LED glows for PLC scan cycle time, only after '''NO1''' is released.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 5: Summary&lt;br /&gt;
&lt;br /&gt;
* One Shot Rising (OSR)&lt;br /&gt;
* One Shot Falling (OSF)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| In this tutorial, we learnt about&lt;br /&gt;
&lt;br /&gt;
* One Shot Rising (OSR) and&lt;br /&gt;
* One Shot Falling (OSF) instructions&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 6: Assignment&lt;br /&gt;
&lt;br /&gt;
Draw a ladder diagram to detect both rising and falling edge of the input signal&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Try this assignment.&lt;br /&gt;
&lt;br /&gt;
Draw a ladder diagram to detect both rising and falling edge of the input signal.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 7:&lt;br /&gt;
&lt;br /&gt;
About Spoken Tutorial project&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 8:&lt;br /&gt;
&lt;br /&gt;
Spoken Tutorial workshops&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| The''' Spoken Tutorial Project''' team:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 9:&lt;br /&gt;
&lt;br /&gt;
Forum for specific questions:&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 10:&lt;br /&gt;
&lt;br /&gt;
Forum for specific questions:&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 11: Acknowledgement&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 12: Thank you slide&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/SET-and-RESET-Coils/English</id>
		<title>OpenPLC-version1-with-LDmicro/C2/SET-and-RESET-Coils/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/SET-and-RESET-Coils/English"/>
				<updated>2020-11-09T10:34:08Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: 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;'''Visual Cue'''&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;hr /&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 '''SET &amp;amp; RESET Coils.'''&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;
* SET-only Coil&lt;br /&gt;
* RESET-only Coil&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will learn about working of&lt;br /&gt;
&lt;br /&gt;
* '''SET-only''' '''Coil''' and &lt;br /&gt;
* '''RESET-only Coil'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 3: System Requirements&lt;br /&gt;
&lt;br /&gt;
* Ubuntu 18.04''' '''OS&lt;br /&gt;
* LDmicro&lt;br /&gt;
* OpenPLC version 1 Mainboard&lt;br /&gt;
* 24V, 2A SMPS&lt;br /&gt;
* USBasp programmer&lt;br /&gt;
* Traffic Light module&lt;br /&gt;
* Switchboard module&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;
* '''OpenPLC version1 Mainboard'''&lt;br /&gt;
* '''24V, 2A SMPS'''&lt;br /&gt;
* '''USBasp''' programmer&lt;br /&gt;
* '''Traffic Light''' module&lt;br /&gt;
* '''Switchboard''' module&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;
* Working of Normal Contact and Normal Coil.&lt;br /&gt;
* If not, please refer to the relevant tutorials 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 the &lt;br /&gt;
&lt;br /&gt;
* working of '''Normal Contact''' and '''Normal Coil'''&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;| Slide 5: Prerequisites - Hardware setup&lt;br /&gt;
&lt;br /&gt;
hardware-prerequisite.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect''' SMPS''' and '''USBasp''' to the '''Mainboard''' as shown in the picture.&lt;br /&gt;
&lt;br /&gt;
Keep these connections throughout this tutorial.&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;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| First we will learn about working of a '''SET-only Coil'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click Instructions -&amp;gt; Insert Contact &amp;gt;&amp;gt; Place the cursor to the right of the Contact &amp;gt;&amp;gt; Click Instructions -&amp;gt; Insert Coil&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a '''Contact''' and a '''Coil''' as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on contact &amp;gt;&amp;gt; Type ON in name box &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the Contact as '''‘ON’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on coil &amp;gt;&amp;gt; Type LED in name box &amp;gt;&amp;gt; Select ‘SET-only’ option &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on the Coil.&lt;br /&gt;
&lt;br /&gt;
In the type column select '''‘SET-only’''' option.&lt;br /&gt;
&lt;br /&gt;
Rename the Coil as '''‘LED’'''.&lt;br /&gt;
&lt;br /&gt;
Click the OK button.&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 will now check the working of this logic.&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 &amp;gt;&amp;gt; Click Simulate -&amp;gt; Real-time simulation&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us turn on the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Simulation mode.'''&lt;br /&gt;
&lt;br /&gt;
Next, start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of XON and YLED&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Observe the state of the '''Contacts''' and '''Coils''' in the '''I/O list'''.&lt;br /&gt;
&lt;br /&gt;
Initially the state of '''XON''' and '''YLED''' are 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on XON &amp;gt;&amp;gt; Highlight the state of the ‘YLED’ &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Change the state of '''XON''' to 1.&lt;br /&gt;
&lt;br /&gt;
The state of '''YLED''' should change to 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 XON &amp;gt;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Highlight the state of the ‘YLED’ &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Change the state of '''XON '''again to 0.&lt;br /&gt;
&lt;br /&gt;
We can observe the state of '''YLED''' is still 1.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of the ‘YLED’ &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| That is, '''SET-only Coil''' sets its state to 1 when it identifies the 0 to 1 transition.&lt;br /&gt;
&lt;br /&gt;
1 to 0 transition has no impact on it.&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 &amp;gt;&amp;gt; Click Simulate -&amp;gt; Simulation Mode&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, turn off the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Halt Simulation.'''&lt;br /&gt;
&lt;br /&gt;
Then click '''Simulate''' and '''Simulation Mode.'''&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 the logic.&lt;br /&gt;
&lt;br /&gt;
The detailed steps on how to compile and save the logic are explained in the earlier tutorials. &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 on Microcontroller &amp;gt;&amp;gt; Select AVR ATmega16 40-PDIP &lt;br /&gt;
&lt;br /&gt;
Click on Settings &amp;gt;&amp;gt; Click on MCU parameters &amp;gt;&amp;gt; Change Crystal frequency to 16&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on '''Settings''' and select the microcontroller '''AVR ATmega16 40-PDIP.''' &lt;br /&gt;
&lt;br /&gt;
Adjust its parameters as shown here.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on XON in I/O list &amp;gt;&amp;gt; Select PC0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
&lt;br /&gt;
Double-click on YLED in I/O list &amp;gt;&amp;gt; Select PA0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Assign pin '''PC0''' to '''XON''' and '''PA0''' to '''YLED'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on Compile &amp;gt;&amp;gt; Click on Compile &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘setonlycoil.hex’ &amp;gt;&amp;gt; Click on Save.&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Compile the logic as '''‘setonlycoil.hex’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘setonlycoil.ld’ &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then save the ladder diagram as '''‘setonlycoil.ld’'''.&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 will see the working of this logic on hardware.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect Mainboard to PC using USBasp&lt;br /&gt;
&lt;br /&gt;
laptop-usbasp.jpg&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect the '''Mainboard''' to your laptop using '''USBasp'''.&lt;br /&gt;
&lt;br /&gt;
Turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open terminal &amp;gt;&amp;gt; Type cd Desktop/LDmicro &amp;gt;&amp;gt; Press ENTER &amp;gt;&amp;gt; type ‘'''avrdude -c usbasp -p m16 -U flash:w:setonlycoil.hex’ '''&amp;gt;&amp;gt; Press ENTER&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open the Terminal by pressing '''CTRL+ALT+T''' keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
Go to the folder where you have saved the hex file.&lt;br /&gt;
&lt;br /&gt;
Type the command as shown to upload the hex file to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
&lt;br /&gt;
This will prevent any hardware damage.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| setonlycoil.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us see the connection details now. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| setonlycoil.png&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect '''GND '''pin of the red LED of '''Traffic Light module''' to GND of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Then connect the '''+5V''' pin of the red LED to the '''PA0 '''pin of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| setonlycoil.png&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect '''GND''' and 5V of '''Switchboard''' to GND and 5V of the '''Mainboard''' respectively.&lt;br /&gt;
&lt;br /&gt;
Then connect '''NO1''' of the '''Switchboard''' to '''PC0''' of the '''Mainboard'''.&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;| After making all the connections properly, turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to the output&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The red LED starts glowing when the '''NO1''' is pressed.&lt;br /&gt;
&lt;br /&gt;
It will be still glowing even after the switch is released.&lt;br /&gt;
&lt;br /&gt;
Recall, this was not the case with '''Normal Coil '''which we learnt earlier.&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;| That is once the LED is set, it will remain set irrespective of the input state&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;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the connections made for this example.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 5: How to turn off the LED &lt;br /&gt;
&lt;br /&gt;
* By turning off the power supply&lt;br /&gt;
* By resetting the program in the microcontroller&lt;br /&gt;
* By using a RESET-only coil&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| There are three ways to turn off the LED which is SET.&lt;br /&gt;
&lt;br /&gt;
First one is turning off the power supply.&lt;br /&gt;
&lt;br /&gt;
Second, is to reset the program in the microcontroller using the reset button.&lt;br /&gt;
&lt;br /&gt;
And the third is with the help of a '''RESET-only''' '''Coil'''.&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 how that third option works.&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;| 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;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Instead of creating a new file, we will make changes in the previous file itself.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click Instructions -&amp;gt; Insert Contact &amp;gt;&amp;gt; Place the cursor to the right of the contact &amp;gt;&amp;gt; Click ‘Instructions -&amp;gt; Insert Coil&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a rung below.&lt;br /&gt;
&lt;br /&gt;
Add a '''Contact''' and a '''Coil''' in the newly added rung as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xnew &amp;gt;&amp;gt; Type ON in name box &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the Contact as '''‘OFF’.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Ynew &amp;gt;&amp;gt; Type LED in name box &amp;gt;&amp;gt; Select ‘RESET-only’ option &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on the newly added Coil.&lt;br /&gt;
&lt;br /&gt;
In the type column select''' ‘RESET-only’ '''Coil option.&lt;br /&gt;
&lt;br /&gt;
Then rename it as '''‘LED’'''.&lt;br /&gt;
&lt;br /&gt;
Click 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 ‘YLED’ in the I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Observe in the '''I/O''' list that both the Coils represent the same Coil.&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 will now check the working of this logic.&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’ &amp;gt;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Click ‘Simulate -&amp;gt; Real-time simulation’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of XON and YLED&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Observe the state of the Contacts and Coils in the '''I/O list'''.&lt;br /&gt;
&lt;br /&gt;
Initially the state of '''XON''', '''XOFF''' and '''YLED''' are 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on ‘XON’ &amp;gt;&amp;gt; Highlight the state of the ‘YLED’ &amp;gt;&amp;gt; Double-click on ‘XON’ &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Change the state of the Contact '''XON''' to 1.&lt;br /&gt;
&lt;br /&gt;
We can observe the state of '''YLED''' is now set to 1.&lt;br /&gt;
&lt;br /&gt;
Change the state of '''XON''' back to 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on ‘XOFF’ &amp;gt;&amp;gt; Highlight the state of the ‘YLED’ &amp;gt;&amp;gt; Double-click on ‘XOFF’ &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, change the state of '''XOFF''' to 1.&lt;br /&gt;
&lt;br /&gt;
We can observe the state of '''YLED''' changes to 0.&lt;br /&gt;
&lt;br /&gt;
Change the state of '''‘XOFF’''' back to 0.&lt;br /&gt;
&lt;br /&gt;
It doesn’t have any effect on the state of the '''‘YLED’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of the ‘YLED’ &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| So, we can conclude that '''RESET-only coil''' resets to 0 upon 0 to 1 transition.&lt;br /&gt;
&lt;br /&gt;
1-0 transition doesn’t have any effect on it.&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 &amp;gt;&amp;gt; Click 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.&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;| Let us now compile the logic.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight status bar at the bottom of the screen&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can see that the microcontroller and its parameters are already set.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on XOFF in I/O list &amp;gt;&amp;gt; Select PC1 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Assign '''pin PC1''' to '''XOFF''' as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on Compile &amp;gt;&amp;gt; Click on Compile As &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘resetonlycoil.hex’ &amp;gt;&amp;gt; Click on Save.&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Compile the logic as '''‘resetonlycoil.hex’ '''using the''' ‘Compile As’ '''option.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save As &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘resetonlycoil.ld’ &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then save the ladder diagram as '''‘resetonlycoil.ld’''' using the '''‘Save As’ '''option.&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 will see the working of this logic on hardware.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect Mainboard to PC using USBasp&lt;br /&gt;
&lt;br /&gt;
laptop-usbasp.jpg&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect the '''Mainboard''' to your laptop using '''USBasp'''.&lt;br /&gt;
&lt;br /&gt;
Turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open terminal &amp;gt;&amp;gt; Type cd Desktop/LDmicro &amp;gt;&amp;gt; Press ENTER &amp;gt;&amp;gt; type ‘'''avrdude -c usbasp -p m16 -U flash:w:resetonlycoil.hex’ '''&amp;gt;&amp;gt; Press ENTER&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch back to the terminal.&lt;br /&gt;
&lt;br /&gt;
Go to the folder where you have saved the hex file.&lt;br /&gt;
&lt;br /&gt;
Type the command as shown to upload the hex file to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
&lt;br /&gt;
This will prevent any hardware damage.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| resetonlycoil.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us see the connection details now. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| resetonlycoil.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Make the connections as in the '''SET-only Coil '''example.&lt;br /&gt;
&lt;br /&gt;
Additionally, connect pin '''PC1''' to '''NO2''' of the '''Switchboard'''.&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;| After making all the connections properly, turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to the output&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The red LED starts glowing when the '''NO1''' is pressed.&lt;br /&gt;
&lt;br /&gt;
To turn off the LED we have to press the switch '''NO2'''.&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 shows that '''SET-only''' and '''RESET-only Coils''' come in pairs.&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;| Turn off the power supply.&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 8: Summary&lt;br /&gt;
&lt;br /&gt;
* SET-only coil&lt;br /&gt;
* RESET-only coil&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we learnt about working of &lt;br /&gt;
&lt;br /&gt;
* SET-only Coil and &lt;br /&gt;
* RESET-only Coil&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide : Assignment&lt;br /&gt;
&lt;br /&gt;
Implement reset-dominant SR flip-flop.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| As an assignment, implement reset-dominant '''SR flip-flop'''.&lt;br /&gt;
&lt;br /&gt;
Refer to the given truth table.&lt;br /&gt;
&lt;br /&gt;
That is, if both the Set and Reset conditions are 1, the output should reset.&lt;br /&gt;
&lt;br /&gt;
Here '''‘Memory’''' means output of the previous PLC scan cycle is retained.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 9: 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 10:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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 11:&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;| 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 12:&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 13:&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 14:&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Internal-Relay-and-Output-pin/English</id>
		<title>OpenPLC-version1-with-LDmicro/C2/Internal-Relay-and-Output-pin/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Internal-Relay-and-Output-pin/English"/>
				<updated>2020-10-28T09:13:11Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: 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;'''Visual Cue'''&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;hr /&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 '''Internal Relay and Output pin'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 2: Learning Objectives&lt;br /&gt;
&lt;br /&gt;
Types of sources available for Contacts/Coils&lt;br /&gt;
&lt;br /&gt;
* Internal Relay&lt;br /&gt;
* Output pin&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial we will learn about,&lt;br /&gt;
&lt;br /&gt;
* Types of sources available for Contacts/Coils.&lt;br /&gt;
* (i.e) '''Internal Relay''' and '''Output pin.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 3: System Requirements&lt;br /&gt;
&lt;br /&gt;
* Ubuntu 18.04''' '''OS&lt;br /&gt;
* LDmicro&lt;br /&gt;
* OpenPLC version 1 Mainboard&lt;br /&gt;
* 24V, 2A SMPS&lt;br /&gt;
* USBasp programmer&lt;br /&gt;
* Traffic Light module&lt;br /&gt;
* Switchboard module&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;
* '''OpenPLC version1 Mainboard'''&lt;br /&gt;
* '''24V, 2A SMPS'''&lt;br /&gt;
* '''USBasp''' programmer&lt;br /&gt;
* '''Traffic Light''' module and&lt;br /&gt;
* '''Switchboard''' module&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;
* Normal Contact and Coil&lt;br /&gt;
* Negated Contact and Coil&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 the working of &lt;br /&gt;
&lt;br /&gt;
# '''Normal Contact''' and '''Coil'''&lt;br /&gt;
# '''Negated Contact''' and '''Coil'''&lt;br /&gt;
&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;| Slide 5: Prerequisites - Hardware setup&lt;br /&gt;
&lt;br /&gt;
hardware-prerequisite.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect''' SMPS''' and '''USBasp''' to the '''Mainboard''' as shown in the picture.&lt;br /&gt;
&lt;br /&gt;
Keep these connections throughout this 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;| First we will understand the working of an '''Internal Relay'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 5: Internal Relay&lt;br /&gt;
&lt;br /&gt;
* It can be thought of as a variable inside a PLC memory bit&lt;br /&gt;
* It does not affect the external I/O’s of the PLC&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| * Internal relay can be thought of as a variable inside a '''PLC''' memory bit.&lt;br /&gt;
* It does not affect the external I/O’s of the '''PLC'''.&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;| Insert ‘Instructions -&amp;gt; Insert Contact’ &lt;br /&gt;
&lt;br /&gt;
&amp;gt;&amp;gt; Place the cursor to the right of the contact &amp;gt;&amp;gt; Insert ‘Instructions -&amp;gt; Insert Coil’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a '''Contact '''from '''Instructions.'''&lt;br /&gt;
&lt;br /&gt;
Then to the right of it insert a '''Coil''' as shown.&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 Contact &amp;gt;&amp;gt; Rename the contact as ‘switch’ &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the Contact as''' ‘switch’.'''&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 coil &amp;gt;&amp;gt; Select Internal Relay &amp;gt;&amp;gt; Rename it as ‘relay’ &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on the Coil.&lt;br /&gt;
&lt;br /&gt;
In the ‘'''Source'''’ column select ‘'''Internal Relay'''’.&lt;br /&gt;
&lt;br /&gt;
Then rename it as ‘'''relay'''’.&lt;br /&gt;
&lt;br /&gt;
Click 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 the coil&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can see that '''‘R’''' is prefixed instead of '''‘Y’''' in the name which indicates relay.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click ‘Edit -&amp;gt; Insert Rung After’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us add a new rung after the current rung.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert ‘Instructions -&amp;gt; Insert Contact’ &amp;gt;&amp;gt; Place the cursor to the right of the contact &amp;gt;&amp;gt; Insert ‘Instructions -&amp;gt; Insert Coil’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a Contact and a Coil in the newly added rung as shown.&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 contact &amp;gt;&amp;gt; Select Internal Relay &amp;gt;&amp;gt; Rename the contact as ‘switch’ &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on the '''Contact'''.&lt;br /&gt;
&lt;br /&gt;
In the '''‘Source’''' column select '''‘Internal''' '''Relay’'''.&lt;br /&gt;
&lt;br /&gt;
Then rename it as '''‘relay’'''.&lt;br /&gt;
&lt;br /&gt;
Click 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 ‘Rrelay’ in the IO list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In the '''I/O''' list we can observe there is only one '''‘Rrelay’'''.&lt;br /&gt;
&lt;br /&gt;
Both Contact and Coil are represented by the same '''internal''' '''relay'''.&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 coil &amp;gt;&amp;gt; Rename it as ‘LED’ &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now rename the Coil as ‘'''LED’''' 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;| We will now check the working of this logic.&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’ &amp;gt;&amp;gt; Click ‘Simulate -&amp;gt; Real-time simulation’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us turn on the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Simulation mode.'''&lt;br /&gt;
&lt;br /&gt;
Next, start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of Xswitch, Rrelay and YLED in the I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Initially the state of '''Xswitch''', '''YLED '''and''' Rrelay''' are 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Change the state of '''Xswitch''' to 1.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of Rrelay and YLED&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe that the state of '''‘YLED’''' and '''‘Rrelay'''' have changed to 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 Rrelay&lt;br /&gt;
&lt;br /&gt;
Highlight ‘Rrelay’ in the I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now double click on '''Rrelay'''.&lt;br /&gt;
&lt;br /&gt;
We can notice that we are not able to change the state of '''Rrelay'''.&lt;br /&gt;
&lt;br /&gt;
This is because the Internal relay operates in the internal logic of the '''PLC'''.&lt;br /&gt;
&lt;br /&gt;
It does not operate on the '''I/O''' pins directly.&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 &amp;gt;&amp;gt; Click Simulate -&amp;gt; Simulation Mode&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, turn off the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Halt Simulation.'''&lt;br /&gt;
&lt;br /&gt;
Then click '''Simulate''' and '''Simulation Mode.'''&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 the logic.&lt;br /&gt;
&lt;br /&gt;
The detailed steps on how to compile and save the logic are explained in the earlier tutorials. &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 on Microcontroller &amp;gt;&amp;gt; Select AVR ATmega16 40-PDIP &lt;br /&gt;
&lt;br /&gt;
Click on Settings &amp;gt;&amp;gt; Click on MCU parameters &lt;br /&gt;
&lt;br /&gt;
&amp;gt;&amp;gt; Change Crystal frequency to 16&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on '''Settings''' and select the microcontroller '''AVR ATmega16 40-PDIP.''' &lt;br /&gt;
&lt;br /&gt;
Adjust its parameters as shown here.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch in I/O list &amp;gt;&amp;gt; Select PC0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
&lt;br /&gt;
Double-click on YLED in I/O list &amp;gt;&amp;gt; Select PA0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Assign '''PC0''' '''pin''' to '''‘Xswitch’''' and '''PA0''' to '''‘YLED’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Rrelay in the I/O list&lt;br /&gt;
&lt;br /&gt;
Highlight the text in the dialog box&lt;br /&gt;
&lt;br /&gt;
&amp;gt;&amp;gt; Click the OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on '''Rrelay''' in the I/O list.&lt;br /&gt;
&lt;br /&gt;
A dialog box opens.&lt;br /&gt;
&lt;br /&gt;
It says that '''‘Can only assign pin number to input/output pins’'''.&lt;br /&gt;
&lt;br /&gt;
Recall that, Internal relay represents a variable inside PLC memory. &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;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Thus working of this example is similar to the '''‘Normal Contact’''' example'''.'''&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;| So we will skip the hardware part.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘internalrelay.ld’ &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Save the file as '''‘internalrelay.ld’ '''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;| We will now learn about the source type '''‘Output''' '''pin’''' of the contact.&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;&amp;gt; Click New&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open a new file in '''LDmicro'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert ‘Instructions -&amp;gt; Insert Contact’ &amp;gt;&amp;gt; Place the cursor to the right of the contact &amp;gt;&amp;gt; Insert ‘Instructions -&amp;gt; Insert Coil’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a '''Contact''' and a '''Coil '''as shown.&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 Contact &amp;gt;&amp;gt; Rename the contact as ‘switch’ &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the Contact as ‘'''switch’''' &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 Coil &amp;gt;&amp;gt; Rename it as ‘LED1’ &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then rename the Coil as ‘'''LED1'''’.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click Edit -&amp;gt; Insert Rung After &amp;gt;&amp;gt; Place the cursor in the newly added rung &amp;gt;&amp;gt; Click ‘Instructions -&amp;gt; Insert Contact’ &amp;gt;&amp;gt; Place the cursor to the right of the contact &amp;gt;&amp;gt; Insert ‘Instructions -&amp;gt; Insert Coil’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a rung below.&lt;br /&gt;
&lt;br /&gt;
Again, insert a '''Contact''' and a '''Coil''' in the newly added rung.&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 contact &amp;gt;&amp;gt; Select Output pin &amp;gt;&amp;gt; Rename the contact as ‘LED1’ &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on the '''Contact'''.&lt;br /&gt;
&lt;br /&gt;
In the '''‘Source’''' column select '''‘Output''' '''pin’'''.&lt;br /&gt;
&lt;br /&gt;
Then rename it as '''‘LED1’'''.&lt;br /&gt;
&lt;br /&gt;
Click 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 the name of the contact viz. YLED1&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe the name of the Contact is prefixed by '''Y '''and not''' X.'''&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 coil &amp;gt;&amp;gt; Check the ‘Negated’ box &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on the Coil.&lt;br /&gt;
&lt;br /&gt;
Check the '''‘Negated’''' box and rename it as '''LED2'''.&lt;br /&gt;
&lt;br /&gt;
Click the OK button.&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 will now check the working of this logic.&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’ &amp;gt;&amp;gt; Click ‘Simulate -&amp;gt; Real-time simulation’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the states of all the instructions&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Initially the state of '''Xswitch''' and '''YLED1''' are 0 and '''YLED2''' is 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 Xswitch&lt;br /&gt;
&lt;br /&gt;
Highlight the state of YLED1 and YLED2&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now change the state of '''Xswitch''' to 1.&lt;br /&gt;
&lt;br /&gt;
We can observe that the state of the '''YLED1''' changes to 1 and '''YLED2''' to 0.&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;| That is the output of '''YLED1''' is given as input to '''YLED2'''.&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;
&lt;br /&gt;
&amp;gt;&amp;gt; Click 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;| Let us compile the logic.&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 on Microcontroller &amp;gt;&amp;gt; Select AVR ATmega16 40-PDIP &lt;br /&gt;
&lt;br /&gt;
Click on Settings &lt;br /&gt;
&lt;br /&gt;
&amp;gt;&amp;gt; Click on MCU parameters &amp;gt;&amp;gt; Change Crystal frequency to 16&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on '''Settings''' and select the microcontroller '''AVR ATmega16 40-PDIP.''' &lt;br /&gt;
&lt;br /&gt;
Adjust its parameters as shown here.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight Xswitch pin number&lt;br /&gt;
&lt;br /&gt;
Double-click on YLED1 in I/O list &amp;gt;&amp;gt; Select PA0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
&lt;br /&gt;
Double-click on YLED2 in I/O list &amp;gt;&amp;gt; Select PA1 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe that Xswitch has already been assigned pin PC0&lt;br /&gt;
&lt;br /&gt;
Now, assign pin '''PA0''' to '''‘YLED1’''' and '''PA1''' to '''‘YLED2’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on Compile &amp;gt;&amp;gt; Click on Compile &amp;gt;&amp;gt; rename it as ‘output-pin.hex’ &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Click on Save.&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Compile the logic as '''‘outputpin.hex’''' as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save &amp;gt;&amp;gt; Rename it as ‘outputpin.ld’ &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then save the ladder diagram as '''‘outputpin.ld’''' 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;| Now we will see the working of this logic on hardware.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect Mainboard to PC using USBasp&lt;br /&gt;
&lt;br /&gt;
laptop-usbasp.jpg&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect the '''Mainboard''' to your laptop using '''USBasp'''.&lt;br /&gt;
&lt;br /&gt;
Turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open terminal &amp;gt;&amp;gt; Type cd Desktop/LDmicro &amp;gt;&amp;gt; Press ENTER &amp;gt;&amp;gt; type ‘'''avrdude -c usbasp -p m16 -U flash:w:outputpin.hex’ ''' &amp;gt;&amp;gt; Press ENTER&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open the terminal by pressing CTRL+ALT+T keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
Go to the folder where you have saved the hex file.&lt;br /&gt;
&lt;br /&gt;
Type the command as shown to upload the hex file to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
&lt;br /&gt;
This will prevent any hardware damage.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| outputpin.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us see the connection details now. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| outputpin.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect '''GND''' and 5V of '''Switchboard''' to GND and 5V of the '''Mainboard''' respectively.&lt;br /&gt;
&lt;br /&gt;
Then connect '''NO1''' of the '''Switchboard''' to '''PC0''' of '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| outputpin.png&lt;br /&gt;
&lt;br /&gt;
Point to the connections&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Beside the yellow LED of '''Traffic''' '''Light''' module, you will see a +5V pin.&lt;br /&gt;
&lt;br /&gt;
Connect this +5V pin to 5V of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Connect the '''‘EN’''' pin to the GND of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Connect the '''‘L’''' pin to '''PA0''' of the '''Mainboard''' which represents '''YLED1'''.&lt;br /&gt;
&lt;br /&gt;
Connect the '''‘Ri’''' pin to '''PA1''' of the '''Mainboard''' which represents '''YLED2'''.&lt;br /&gt;
&lt;br /&gt;
Make the connections as shown in the picture.&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;| After making all the connections properly turn on the power supply.&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;| Initially the left green LED will be glowing.&lt;br /&gt;
&lt;br /&gt;
Recall that bottom LED connections should be given logic low for an LED to glow.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point the output&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now press the switch '''NO1'''.&lt;br /&gt;
&lt;br /&gt;
The right green LED starts glowing and the left one goes off at the same time.&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;| Thus the output of the left green LED acts as input to the right green LED.&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;| Turn off the power supply.&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 6: Summary&lt;br /&gt;
&lt;br /&gt;
* Internal Relay&lt;br /&gt;
* Output pin&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we learnt about different source types such as&lt;br /&gt;
&lt;br /&gt;
* Internal Relay&lt;br /&gt;
* Output pin&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 7: Assignment&lt;br /&gt;
&lt;br /&gt;
Draw a ladder logic to latch an LED&lt;br /&gt;
&lt;br /&gt;
Hint:&lt;br /&gt;
&lt;br /&gt;
* The LED should turn on when a switch is pressed &lt;br /&gt;
* It should stay on even after it is released.&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| As an assignment, draw a ladder logic to latch an LED.&lt;br /&gt;
&lt;br /&gt;
Hint:&lt;br /&gt;
&lt;br /&gt;
* The LED should turn on when a switch is pressed &lt;br /&gt;
* It should stay on even after it is released.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 8:&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 9:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and &lt;br /&gt;
* gives certificates on passing online tests.&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 10:&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;| &lt;br /&gt;
* 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 11:&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 12:&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 13:&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Implementing-OR-and-XOR-logic-gates/English</id>
		<title>OpenPLC-version1-with-LDmicro/C2/Implementing-OR-and-XOR-logic-gates/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Implementing-OR-and-XOR-logic-gates/English"/>
				<updated>2020-10-27T10:22:29Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: 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;'''Visual Cue'''&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;hr /&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 '''Implementing OR &amp;amp; XOR logic gates'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 2: Learning Objectives&lt;br /&gt;
&lt;br /&gt;
How to implement logic gates&lt;br /&gt;
&lt;br /&gt;
* OR&lt;br /&gt;
* XOR&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will implement '''OR &amp;amp; XOR '''logic gates 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: System Requirements&lt;br /&gt;
&lt;br /&gt;
* Ubuntu 18.04''' '''OS&lt;br /&gt;
* LDmicro&lt;br /&gt;
* OpenPLC version 1 Mainboard&lt;br /&gt;
* 24V, 2A SMPS&lt;br /&gt;
* USBasp programmer&lt;br /&gt;
* Traffic Light module&lt;br /&gt;
* Switchboard module&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;
* '''OpenPLC version1 Mainboard'''&lt;br /&gt;
* '''24V, 2A SMPS'''&lt;br /&gt;
* '''USBasp''' programmer&lt;br /&gt;
* '''Traffic Light''' module and &lt;br /&gt;
* '''Switchboard''' module&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;
* Normal Contact and Coil&lt;br /&gt;
* Negated Contact and Coil&lt;br /&gt;
&lt;br /&gt;
If not, please refer to the relevant tutorials from [https://spoken-tutorial.org/ Home | spoken-tutorial.org]&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
* To follow this tutorial, you should know the working of &lt;br /&gt;
&lt;br /&gt;
# '''Normal Contact''' and '''Coil'''&lt;br /&gt;
# '''Negated Contact''' and '''Coil'''&lt;br /&gt;
&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;| Slide 5: Prerequisites - Hardware setup&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
hardware-prerequisite.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect''' SMPS''' and '''USBasp''' to the '''Mainboard''' as shown in the picture.&lt;br /&gt;
&lt;br /&gt;
Keep these connections throughout this 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;| First we will see how to implement OR gate.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 6: OR gate&lt;br /&gt;
&lt;br /&gt;
'''OR''' gate outputs 0 only when all of its inputs are 0&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We know that '''OR''' gate outputs 0 only when all of its inputs are 0.&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 Instructions -&amp;gt; Insert Contact&lt;br /&gt;
&lt;br /&gt;
Place the cursor to the right of Xnew &amp;gt;&amp;gt; Click Instructions -&amp;gt; Insert Coil&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a '''Contact''' and a '''Coil''' as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xnew &amp;gt;&amp;gt; Type ‘switch1’ in the name box &amp;gt;&amp;gt; Click OK button &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the Contact as '''‘switch1’.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Ynew &amp;gt;&amp;gt; Type ‘LED’ in the name box &amp;gt;&amp;gt; Click OK button &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then, rename the Coil as '''‘LED’.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor to the below Xswitch1 &amp;gt;&amp;gt; Click Instructions -&amp;gt; Insert Contact&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now place the cursor below '''Xswitch1 '''and insert a Contact.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xnew &amp;gt;&amp;gt; Type ‘switch2’ in the name box &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the new Contact as '''’switch2’'''.&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 will now check the working of this logic.&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 &amp;gt;&amp;gt; Click Simulate -&amp;gt; Real-time simulation&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us turn on the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Simulation mode.'''&lt;br /&gt;
&lt;br /&gt;
Next, start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of Xswitch and YLED&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Initially the states of both the Contacts and Coil are 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch1 &amp;gt;&amp;gt; Highlight the state of the ‘YLED' &amp;gt;&amp;gt; Double-click on Xswitch1 &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Change the state of '''Xswitch1''' to 1.&lt;br /&gt;
&lt;br /&gt;
We can observe the state of '''YLED''' is 1.&lt;br /&gt;
&lt;br /&gt;
Change the state of '''Xswitch1''' back to 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch2 &amp;gt;&amp;gt; Highlight the state of the ‘YLED'&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, change the state of '''Xswitch2''' to 1.&lt;br /&gt;
&lt;br /&gt;
We can observe the state of '''YLED''' is 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 Xswitch1 &amp;gt;&amp;gt; Highlight the state of the ‘YLED'&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now again change the state of '''Xswitch1''' to 1.&lt;br /&gt;
&lt;br /&gt;
We can observe that the state of '''YLED''' is 1.&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;| That is, output state is 0 only when both the inputs states are 0.&lt;br /&gt;
&lt;br /&gt;
Thus, resembling the truth table of an '''OR''' gate.&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 &amp;gt;&amp;gt; Click Simulate -&amp;gt; Simulation Mode&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, turn off the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Halt Simulation.'''&lt;br /&gt;
&lt;br /&gt;
Then click '''Simulate''' and '''Simulation Mode.'''&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 the logic.&lt;br /&gt;
&lt;br /&gt;
The detailed steps on how to compile and save the logic are explained in the earlier tutorials. &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 on Microcontroller &amp;gt;&amp;gt; Select AVR ATmega16 40-PDIP &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Click on Settings &amp;gt;&amp;gt; Click on MCU parameters &amp;gt;&amp;gt; Change Crystal frequency to 16&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on '''Settings''' and select the microcontroller '''AVR ATmega16 40-PDIP.''' &lt;br /&gt;
&lt;br /&gt;
Adjust its parameters as shown here.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch1 in the I/O list&amp;gt;&amp;gt; Select PC0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Double-click on Xswitch2 in the I/O list &amp;gt;&amp;gt; Select PC1 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Double-click on YLED in the I/O list&amp;gt;&amp;gt; Select PA0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Assign pin '''PC0''' to '''Xswitch1''' and '''PC1''' to '''Xswitch2'''.&lt;br /&gt;
&lt;br /&gt;
Assign '''PA0''' to '''YLED.'''&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;| Compile the logic as '''‘orgate.hex’'''.&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;| Save the file as '''‘orgate.ld’''' 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;| Now we will see the working of this logic on hardware.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect Mainboard to PC using USBasp&lt;br /&gt;
&lt;br /&gt;
laptop-usbasp.jpg&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect the '''Mainboard''' to your laptop using '''USBasp'''.&lt;br /&gt;
&lt;br /&gt;
Turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open terminal &amp;gt;&amp;gt; Type cd Desktop/LDmicro &amp;gt;&amp;gt; Press ENTER &amp;gt;&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
type ‘'''avrdude -c usbasp -p m16 -U flash:w:orgate.hex’ '''&amp;gt;&amp;gt; Press ENTER&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open the Terminal by pressing '''CTRL+ALT+T''' keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
Go to the folder where you have saved the hex file.&lt;br /&gt;
&lt;br /&gt;
Type the command as shown to upload the hex file to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
&lt;br /&gt;
This will prevent any hardware damage.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| orgate.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us see the connection details now. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| orgate.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect '''GND pin''' of the red LED of '''Traffic Light module''' to '''GND''' pin of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Then connect the '''+5V''' pin of the red LED to '''PA0''' pin of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| orgate.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect '''GND''' and '''5V''' of Switchboard to '''GND''' and '''5V''' of the '''Mainboard''' respectively.&lt;br /&gt;
&lt;br /&gt;
Connect '''NO1''' to '''PC0''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Connect '''NO2''' to '''PC1''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Make the connections as shown in the picture.&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;| Turn on the power supply.&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 can see that the red LED is off initially.&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;| It will start glowing when either one of the switches is pressed.&lt;br /&gt;
&lt;br /&gt;
It will also glow when both of the switches are pressed at the same time.&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;| Thus, for an '''OR''' gate the inputs i.e. Contacts should be parallel to each other.&lt;br /&gt;
&lt;br /&gt;
The output i.e. Coil should be in series with both the inputs.&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;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the connections made for this example.&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 will now learn about '''XOR''' gate.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 6: XOR gate&lt;br /&gt;
&lt;br /&gt;
Boolean equation:&lt;br /&gt;
&lt;br /&gt;
A’B+A’B - (('''NOT''' A) '''AND''' B) '''OR''' (A '''AND''' ('''NOT''' B))&lt;br /&gt;
&lt;br /&gt;
It is a combination of NOT, AND and OR gates&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We know the boolean equation of an '''XOR''' gate with inputs A and B will be AB’+A’B.&lt;br /&gt;
&lt;br /&gt;
Thus it is a combination of '''NOT''', '''AND''' and '''OR''' gates.&lt;br /&gt;
&lt;br /&gt;
|-&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 will now see how to implement it on '''LDmicro'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch back to LDmicro&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;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Instead of creating a new file, we will make changes in the previous file itself.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place cursor to the right of Xswitch1 &amp;gt;&amp;gt; Click Instructions -&amp;gt; Insert Contact &amp;gt;&amp;gt; Double-click on Xnew &amp;gt;&amp;gt; Check the Negated box &amp;gt;&amp;gt; Type switch2 in the name box &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a '''Contact''' to the right of '''Xswitch1'''.&lt;br /&gt;
&lt;br /&gt;
Configure it as '''Negated''' and rename it as '''switch2''' as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place cursor to the right of Xswitch2 &amp;gt;&amp;gt; Click Instructions -&amp;gt; Insert Contact &amp;gt;&amp;gt; Double-click on Xnew &amp;gt;&amp;gt; Check the Negated box &amp;gt;&amp;gt; Type switch1 in the name box &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then insert a Contact to the right of '''Xswitch2 '''which is in the parallel rung.&lt;br /&gt;
&lt;br /&gt;
Configure it as '''Negated''' and rename it as '''switch1''' 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;| We will now check the working of this logic.&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 &amp;gt;&amp;gt; Click Simulate -&amp;gt; Real-time simulation&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of Xswitch and YLED&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Initially the state of both the Contacts and Coil are 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch1 &amp;gt;&amp;gt; Highlight the state of the ‘YLED' &amp;gt;&amp;gt; Double-click on Xswitch1&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Change the state of '''Xswitch1''' to 1.&lt;br /&gt;
&lt;br /&gt;
We can observe the state of '''YLED''' is 1.&lt;br /&gt;
&lt;br /&gt;
Change the state of '''Xswitch1''' back to 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch2 &amp;gt;&amp;gt; Highlight the state of the ‘YLED'&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, change the state of '''Xswitch2''' to 1.&lt;br /&gt;
&lt;br /&gt;
We can observe the state of '''YLED''' is 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 Xswitch1 &amp;gt;&amp;gt; Highlight the state of the ‘YLED'&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now again change the state of '''Xswitch1''' to 1.&lt;br /&gt;
&lt;br /&gt;
We can observe that the state of '''YLED''' changes to 0.&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;| That is the output state is 0 when both the inputs have the same state.&lt;br /&gt;
&lt;br /&gt;
Thus, resembling the truth table of an '''XOR''' gate.&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 &amp;gt;&amp;gt; Click 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;| Now let us compile the logic.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight I/O list and status bar&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe that the microcontroller and its parameters are already set.&lt;br /&gt;
&lt;br /&gt;
Pin assignment is also already done.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on Compile &amp;gt;&amp;gt; Click on Compile As &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rename it as ‘xorgate.hex’ &amp;gt;&amp;gt; Click on Save.&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Compile the logic as '''xorgate.hex '''using '''‘Compile As’''' option.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save As &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Rename it as ‘xorgate.ld’ &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then save the ladder diagram as '''‘xorgate.ld’''' using''' '''the '''‘Save As’ '''option.&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 will see the working of this logic on hardware.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect Mainboard to PC using USBasp&lt;br /&gt;
&lt;br /&gt;
laptop-usbasp.jpg&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect the '''Mainboard''' to your laptop using '''USBasp'''.&lt;br /&gt;
&lt;br /&gt;
Turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open terminal &amp;gt;&amp;gt; Type cd Desktop/LDmicro &amp;gt;&amp;gt; Press ENTER &amp;gt;&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
type ‘'''avrdude -c usbasp -p m16 -U flash:w:xorgate.hex’ '''&amp;gt;&amp;gt; Press ENTER&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch back to the terminal.&lt;br /&gt;
&lt;br /&gt;
Type the command as shown to upload the hex file to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
&lt;br /&gt;
This will prevent any hardware damage.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| xorgate.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us see the connection details now. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| xorgate.png&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The connections will be same as in the '''OR''' '''gate '''example.&lt;br /&gt;
&lt;br /&gt;
Turn on the power supply.&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;| Initially the red LED is off.&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;| It will start glowing only when either of the switches are pressed, but not both.&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;| Turn off the power supply.&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 7: Summary&lt;br /&gt;
&lt;br /&gt;
How to implement logic gates&lt;br /&gt;
&lt;br /&gt;
* OR&lt;br /&gt;
* XOR &lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial we learnt to implement logic gates &lt;br /&gt;
&lt;br /&gt;
* OR and&lt;br /&gt;
* XOR&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;| Slide 8: Assignment: &lt;br /&gt;
&lt;br /&gt;
Implement 2 input XNOR logic gate&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;| As an assignment, try to implement 2 input '''XNOR''' logic gate.&lt;br /&gt;
&lt;br /&gt;
Truth table of XNOR gate is shown here&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;
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 10:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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 11:&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;| &lt;br /&gt;
* Please post your timed queries in this forum&lt;br /&gt;
&lt;br /&gt;
&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;
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 13:&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 14:&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;
&lt;br /&gt;
And this is Harsha Priyanka from FOSSEE team, signing off.&lt;br /&gt;
&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Implementing-NOT-and-AND-logic-gates/English</id>
		<title>OpenPLC-version1-with-LDmicro/C2/Implementing-NOT-and-AND-logic-gates/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Implementing-NOT-and-AND-logic-gates/English"/>
				<updated>2020-10-19T11:32:02Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: 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;'''Visual Cue'''&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;hr /&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 '''Implementing NOT &amp;amp; AND logic gates'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 2: Learning Objectives&lt;br /&gt;
&lt;br /&gt;
How to implement logic gates&lt;br /&gt;
&lt;br /&gt;
* NOT&lt;br /&gt;
* AND&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will implement '''NOT &amp;amp; AND '''logic gates 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: System Requirements&lt;br /&gt;
&lt;br /&gt;
* Ubuntu 18.04 OS&lt;br /&gt;
* LDmicro&lt;br /&gt;
* OpenPLC version 1 Mainboard&lt;br /&gt;
* 24V, 2A SMPS&lt;br /&gt;
* USBasp programmer&lt;br /&gt;
* Traffic Light module&lt;br /&gt;
* Switchboard module&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;
* '''OpenPLC version1 Mainboard'''&lt;br /&gt;
* '''24V, 2A SMPS'''&lt;br /&gt;
* '''USBasp''' programmer&lt;br /&gt;
* '''Traffic Light''' module&lt;br /&gt;
* '''Switchboard''' module&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;
* Normal Contact and Coil&lt;br /&gt;
* Negated Contact and Coil&lt;br /&gt;
&lt;br /&gt;
If not, please refer to the relevant tutorials from [https://spoken-tutorial.org/ Home | spoken-tutorial.org]&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| * To follow this tutorial, you should know the working of &lt;br /&gt;
&lt;br /&gt;
# '''Normal Contact''' and '''Coil'''&lt;br /&gt;
# '''Negated Contact''' and '''Coil'''&lt;br /&gt;
&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;| Slide 5: Prerequisites - Hardware setup&lt;br /&gt;
&lt;br /&gt;
hardware-prerequisite.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect''' SMPS''' and '''USBasp''' to the '''Mainboard''' as shown in the picture.&lt;br /&gt;
&lt;br /&gt;
Keep these connections throughout this 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;| First we will implement a '''NOT''' gate.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 5: '''NOT gate'''&lt;br /&gt;
&lt;br /&gt;
For a '''NOT''' gate the output boolean is inverse of the input&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We know that for a '''NOT''' gate the output boolean is inverse of the input.&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 Instructions -&amp;gt; Insert Contact &amp;gt;&amp;gt; Place the cursor to the right of the contact &amp;gt;&amp;gt; Click ‘Instructions -&amp;gt; Insert Coil’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a Contact as shown.&lt;br /&gt;
&lt;br /&gt;
Place the cursor to the right of the Contact and insert a Coil.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on contact &amp;gt;&amp;gt; Type switch in name box &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the Contact as '''‘switch’ '''as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on coil &amp;gt;&amp;gt; Select ‘Negated’ option &amp;gt;&amp;gt; Type LED in name box &amp;gt;&amp;gt;Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Next configure the Coil as '''Negated''' and rename it as '''LED'''.&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 will check the working of this logic.&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 &amp;gt;&amp;gt; Click Simulate -&amp;gt; Real-time simulation&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us turn on the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on S'''imulation mode.'''&lt;br /&gt;
&lt;br /&gt;
Next, start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of Xswitch and YLED&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Initially the state of '''Xswitch''' is 0 and '''YLED''' is 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 Xswitch in the IO list &amp;gt;&amp;gt; Highlight the state of the ‘YLED’ &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Change the state of '''Xswitch''' to 1.&lt;br /&gt;
&lt;br /&gt;
We can observe the state of '''YLED''' changes to 0.&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;| That is resembling the truth table of a '''NOT''' gate.&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 &amp;gt;&amp;gt; Click Simulate -&amp;gt; Simulation Mode&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, turn off the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Halt Simulation.'''&lt;br /&gt;
&lt;br /&gt;
Then click '''Simulate''' and '''Simulation Mode.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch &amp;gt;&amp;gt; Check the Negated box &amp;gt;&amp;gt; Click the OK button&lt;br /&gt;
&lt;br /&gt;
Double-click on coil &amp;gt;&amp;gt; Select ‘Normal’ option &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Configure the Contact as '''Negated''' and Coil as '''Normal'''.&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 &amp;gt;&amp;gt; Click Simulate -&amp;gt; Real-time simulation&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now again 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;| Highlight the state of Xswitch and YLED&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Initially the state of '''Xswitch''' is 0 and '''YLED''' is 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 Xswitch in the IO list &amp;gt;&amp;gt; Highlight the state of the ‘YLED&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Change the state of '''Xswitch''' to 1.&lt;br /&gt;
&lt;br /&gt;
We can observe the state of '''YLED''' is 0.&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;| Thus either input or output being negated works as a NOT gate.&lt;br /&gt;
&lt;br /&gt;
Note: Both input and output shouldn’t be negated at the same time for NOT gate.&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 &amp;gt;&amp;gt; Click 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;| Now let us compile the logic.&lt;br /&gt;
&lt;br /&gt;
The detailed steps on how to compile and save the logic are explained in the earlier tutorials. &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 on Microcontroller &amp;gt;&amp;gt; Select AVR ATmega16 40-PDIP &lt;br /&gt;
&lt;br /&gt;
Click on Settings &amp;gt;&amp;gt; Click on MCU parameters &amp;gt;&amp;gt; Change Crystal frequency to 16&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on '''Settings''' and select the microcontroller '''AVR ATmega16 40-PDIP.''' &lt;br /&gt;
&lt;br /&gt;
Adjust its parameters as shown here.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch in I/O list &amp;gt;&amp;gt; Select PC0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
&lt;br /&gt;
Double-click on YLED in I/O list &amp;gt;&amp;gt; Select PA0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Assign pin '''PC0''' to '''Xswitch''' and '''PA0''' to '''YLED'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on Compile &amp;gt;&amp;gt; Click on Compile &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘notgate.hex’ &amp;gt;&amp;gt; Click on Save.&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Compile the logic as '''notgate.hex'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘notgate.ld’ &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then save the ladder diagram as '''‘notgate.ld’''' 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;| Now we will see the working of this logic on hardware.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect Mainboard to PC using USBasp&lt;br /&gt;
&lt;br /&gt;
laptop-usbasp.jpg&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect the '''Mainboard''' to your laptop using '''USBasp'''.&lt;br /&gt;
&lt;br /&gt;
Turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open terminal &amp;gt;&amp;gt; Type cd Desktop/LDmicro &amp;gt;&amp;gt; Press ENTER &amp;gt;&amp;gt; type ‘'''avrdude -c usbasp -p m16 -U flash:w:notgate.hex’ '''&amp;gt;&amp;gt; Press ENTER&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open the Terminal by pressing '''CTRL+ALT+T''' keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
Go to the folder where you have saved the hex file.&lt;br /&gt;
&lt;br /&gt;
Type the command as shown to upload the hex file to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
&lt;br /&gt;
This will prevent any hardware damage.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| notgate.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us see the connection details now. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| notgate.png&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect '''GND pin''' of the red LED of '''Traffic Light module''' to '''GND''' pin of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Then connect +5V pin of the red LED to '''PA0''' pin of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| notgate.png&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect '''GND''' and '''5V''' of Switchboard to '''GND''' and '''5V''' of the '''Mainboard''' respectively.&lt;br /&gt;
&lt;br /&gt;
Connect '''NO1''' to '''PC0''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Make the connections as shown in the picture.&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;| After making all the connections properly, turn on the power supply.&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 can see that the red LED is glowing initially.&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;| It will go off whenever the '''NO1''' is pressed.&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 shows the working of a NOT gate.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| hardware-prerequisite.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the connections made for this example.&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 now see how to implement an '''AND''' gate in '''LDmicro'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 6: AND gate&lt;br /&gt;
&lt;br /&gt;
* '''AND''' gate output state is 1 only when all of its input states are 1&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We know that '''AND''' gate output state is 1 only when all of its input states are 1.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch back to LDmicro&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 File -&amp;gt; New&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open a new file.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click Instructions -&amp;gt; Insert Contact&lt;br /&gt;
&lt;br /&gt;
Place the cursor to the right of Xnew &amp;gt;&amp;gt; Click Instructions -&amp;gt; Insert Contact&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Here we will implement a two-input '''AND''' gate.&lt;br /&gt;
&lt;br /&gt;
Insert two '''Contacts '''as shown here.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xnew &amp;gt;&amp;gt; Type switch1 in the name box &amp;gt;&amp;gt; Click the OK button&lt;br /&gt;
&lt;br /&gt;
Double-click on Xnew &amp;gt;&amp;gt; Type switch2 in the name box &amp;gt;&amp;gt; Click the OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the first Contact as '''‘switch1’''' and second Contact as '''‘switch2’.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor to the right of Xswitch2 &amp;gt;&amp;gt; Click Instructions -&amp;gt; Insert Coil&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor to the right of '''Xswitch2''' and insert a Coil.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Ynew &amp;gt;&amp;gt; Type LED in the name box &amp;gt;&amp;gt; Click the OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the Coil as '''‘LED’'''.&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 will now check the working of this logic.&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 &amp;gt;&amp;gt; Click Simulate -&amp;gt; Real-time simulation&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of Xswitch and YLED&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Initially the state of both the '''Contacts''' and '''Coil''' are 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch1 in the IO list &amp;gt;&amp;gt; Highlight the state of the ‘YLED' &amp;gt;&amp;gt; Double-click on Xswitch1 in the IO list &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Change the state of '''Xswitch1''' to 1.&lt;br /&gt;
&lt;br /&gt;
We can observe the state of '''YLED''' is still 0.&lt;br /&gt;
&lt;br /&gt;
Change the state of '''Xswitch1''' back to 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch2 in the IO list &amp;gt;&amp;gt; Highlight the state of the ‘YLED'&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, change the state of '''Xswitch2''' to 1.&lt;br /&gt;
&lt;br /&gt;
We can observe the state of '''YLED''' is still 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch1 in the IO list &amp;gt;&amp;gt; Highlight the state of the ‘YLED'&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now again change the state of '''Xswitch1''' to 1.&lt;br /&gt;
&lt;br /&gt;
We can observe that the state of '''YLED''' is 1.&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;| That is, output state is 1 only when both the inputs states are 1.&lt;br /&gt;
&lt;br /&gt;
Thus, resembling the truth table of a '''AND''' gate.&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 &amp;gt;&amp;gt; Click 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;| Now let us compile the logic.&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 on Microcontroller &amp;gt;&amp;gt; Select AVR ATmega16 40-PDIP &lt;br /&gt;
&lt;br /&gt;
Click on Settings &amp;gt;&amp;gt; Click on MCU parameters &amp;gt;&amp;gt; Change Crystal frequency to 16&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on '''Settings''' and select the microcontroller '''AVR ATmega16 40-PDIP.''' &lt;br /&gt;
&lt;br /&gt;
Adjust its parameters as shown here.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch1 in I/O list &amp;gt;&amp;gt; Select PC0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
&lt;br /&gt;
Double-click on Xswitch2 in I/O list &amp;gt;&amp;gt; Select PC1 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Assign pin '''PC0''' to '''Xswitch1''' and '''PC1''' to '''Xswitch2'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on Compile &amp;gt;&amp;gt; Click on Compile &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘andgate.hex’ &amp;gt;&amp;gt; Click on Save.&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Compile the logic as '''andgate.hex'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘andgate.ld’ &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then save the ladder diagram as '''‘andgate.ld’''' 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;| Now we will see the working of this logic on hardware.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect Mainboard to PC using USBasp&lt;br /&gt;
&lt;br /&gt;
laptop-usbasp.jpg&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect the '''Mainboard''' to your laptop using '''USBasp'''.&lt;br /&gt;
&lt;br /&gt;
Turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open terminal &amp;gt;&amp;gt; Type cd Desktop/LDmicro &amp;gt;&amp;gt; Press ENTER &amp;gt;&amp;gt; type ‘'''avrdude -c usbasp -p m16 -U flash:w:andgate.hex’ '''&amp;gt;&amp;gt; Press ENTER&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open the terminal.&lt;br /&gt;
&lt;br /&gt;
Type the command as shown to upload the hex file to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
&lt;br /&gt;
This will prevent any hardware damage.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| andgate.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us see the connection details now. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| andgate.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect '''GND pin''' of the red LED of '''Traffic Light module''' to '''GND''' pin of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Then connect the '''+5V''' pin of the red LED to '''PA0''' pin of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| andgate.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect '''GND''' and '''5V''' of Switchboard to '''GND''' and '''5V''' of the '''Mainboard''' respectively.&lt;br /&gt;
&lt;br /&gt;
Connect '''NO1''' to '''PC0''' of the '''Mainboard''' and connect '''NO2''' to '''PC1''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Make the connections as shown in the picture.&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;| Turn on the power supply.&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 can see that the red LED is off initially.&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;| It will glow only when both '''NO1''' and '''NO2''' are pressed simultaneously.&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;| Thus, for '''AND''' gate both the inputs i.e. Contacts should be in series.&lt;br /&gt;
&lt;br /&gt;
The output i.e. Coil should also be in series with the inputs.&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;| Turn off the power supply.&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 7: Summary&lt;br /&gt;
&lt;br /&gt;
We learnt to implement logic gates&lt;br /&gt;
&lt;br /&gt;
* NOT&lt;br /&gt;
* AND&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial we learnt to implement logic gates &lt;br /&gt;
&lt;br /&gt;
* NOT and&lt;br /&gt;
* AND&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;| Slide 8: Assignment&lt;br /&gt;
&lt;br /&gt;
Implement 2 input NAND logic gate&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;| As an assignment, try to implement 2 input '''NAND''' logic gates.&lt;br /&gt;
&lt;br /&gt;
Truth table of the '''NAND''' gate is shown here.&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;
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 10:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops and&lt;br /&gt;
* gives certificates on passing online tests.&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 11:&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;| 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 12:&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 13:&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 14:&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Normal-Coil/English</id>
		<title>OpenPLC-version1-with-LDmicro/C2/Normal-Coil/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Normal-Coil/English"/>
				<updated>2020-10-19T11:09:51Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: &lt;/p&gt;
&lt;hr /&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 '''Normal Coil.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 2: Learning Objectives&lt;br /&gt;
&lt;br /&gt;
* Normal Coil &lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will learn about the working of&lt;br /&gt;
&lt;br /&gt;
* '''Normal Coil '''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 3: System Requirements&lt;br /&gt;
&lt;br /&gt;
* '''Ubuntu Linux''' 18.04 OS&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''OpenPLC version 1 Mainboard'''&lt;br /&gt;
* 24V, 2A '''SMPS'''&lt;br /&gt;
* '''USBasp programmer'''&lt;br /&gt;
* '''Traffic Light module'''&lt;br /&gt;
* '''Switchboard module'''&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;
* '''OpenPLC version1 Mainboard'''&lt;br /&gt;
* 24V, 2A '''SMPS'''&lt;br /&gt;
* '''USBasp programmer'''&lt;br /&gt;
* '''Traffic Light module''' and &lt;br /&gt;
* '''Switchboard module'''&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;
* Program OpenPLC V1 Mainboard and&lt;br /&gt;
* Interface OpenPLC modules with Mainboard. &lt;br /&gt;
&lt;br /&gt;
If not, please refer to the relevant tutorials from [https://spoken-tutorial.org/ Home | spoken-tutorial.org]&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;|&lt;br /&gt;
* To follow this tutorial, you should know how to &lt;br /&gt;
** '''program OpenPLC V1 Mainboard''' and&lt;br /&gt;
** '''interface OpenPLC modules''' with '''Mainboard'''. &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;| Slide 5: Prerequisites - Hardware setup&lt;br /&gt;
&lt;br /&gt;
hardware-prerequisite.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect''' SMPS''' and '''USBasp''' to the '''Mainboard''' as shown in the picture.&lt;br /&gt;
&lt;br /&gt;
Keep these connections throughout this tutorial.&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 ‘Instructions -&amp;gt; Insert Coil’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a '''Coil''' from '''Instructions''' 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;| We can observe that '''Coil''' is an '''output instruction'''.&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 coil&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on the '''Coil'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight ‘Type’ and ‘Source’&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| A dialog box opens.&lt;br /&gt;
&lt;br /&gt;
Here we can see two columns named '''‘Type’''' and '''‘Source’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to the types&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can see there are four types of '''coils'''.&lt;br /&gt;
&lt;br /&gt;
They are '''Normal, Negated, SET-Only''' and '''RESET-Only Coils'''.&lt;br /&gt;
&lt;br /&gt;
These coils have two '''source types''' which are''' Pin on MCU''' and '''Internal Relay'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to Normal, Pin on MCU&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| By default, the '''type''' of the '''coil''' is set to '''‘Normal’''' and '''source''' to '''‘Pin on MCU’'''.&lt;br /&gt;
&lt;br /&gt;
'''Pin on MCU''' means that the '''coil''' represents a '''pin''' on the '''microcontroller'''.&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;| Don’t change them. &lt;br /&gt;
&lt;br /&gt;
Keep the default settings as it is.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to other types&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will learn about other '''types''' of '''Coils''' and '''source types''' in the later tutorials.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the coil as LED &amp;gt;&amp;gt; Click the OK button.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the''' Coil''' as '''LED''' and click on the '''OK''' button.&lt;br /&gt;
&lt;br /&gt;
Remember that '''LDmicro''' is '''case sensitive'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the rung &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Note that the '''Coil''' is directly connected to the '''positive rail'''.&lt;br /&gt;
&lt;br /&gt;
So, the '''input''' to the '''Coil''' is '''logic 1'''.&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 will check the working of this '''logic'''.&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’ &amp;gt;&amp;gt; Click ‘Simulate -&amp;gt; Real-time simulation’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us turn on the '''simulation mode'''.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Simulation mode.'''&lt;br /&gt;
&lt;br /&gt;
Next, start real-time '''simulation''' as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight state of YLED in the I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Observe the '''state''' of '''YLED''' in the '''I/O list.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of LED in I/O list at the bottom of the screen&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe the '''state''' of '''YLED''' is 1.&lt;br /&gt;
&lt;br /&gt;
That is for a '''Normal Coil''' when the '''input''' is '''true''', the '''output''' is also '''true'''.&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' &amp;gt;&amp;gt; Click 'Simulate -&amp;gt; Simulation Mode'&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, turn off the '''simulation mode'''.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Halt Simulation.'''&lt;br /&gt;
&lt;br /&gt;
Then click '''Simulate''' and '''Simulation Mode'''&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''' the '''logic'''.&lt;br /&gt;
&lt;br /&gt;
The detailed steps on how to '''compile''' and save the '''logic''' are explained in the earlier tutorials. &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 on Microcontroller &amp;gt;&amp;gt; Select AVR ATmega16 40-PDIP &lt;br /&gt;
&lt;br /&gt;
Click on Settings &amp;gt;&amp;gt; Click on MCU parameters &amp;gt;&amp;gt; Change Crystal frequency to 16 &amp;gt;&amp;gt;Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on '''Settings''' and select the '''microcontroller AVR ATmega16 40-PDIP.''' &lt;br /&gt;
&lt;br /&gt;
Adjust its '''parameters''' as shown here.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on YLED in I/O list &amp;gt;&amp;gt; Select PA0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on the '''YLED''' in the '''I/O list'''.&lt;br /&gt;
&lt;br /&gt;
Then, assign '''pin PA0''' to the '''coil ‘YLED’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on Compile &amp;gt;&amp;gt; Click on Compile &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘normalcoil.hex’ &amp;gt;&amp;gt; Click on Save.&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''Compile''' the '''logic''' and save the '''hex file''' as ‘'''normalcoil.hex'''’.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘normalcoil.ld’ &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then save the '''ladder diagram''' as ‘'''normalcoil.ld'''’.&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 will see the working of this '''logic''' on '''hardware'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect Mainboard to PC using USBasp&lt;br /&gt;
&lt;br /&gt;
laptop-usbasp.jpg&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect the '''Mainboard''' to your laptop using '''USBasp'''.&lt;br /&gt;
&lt;br /&gt;
Turn on the '''power supply'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open terminal &amp;gt;&amp;gt; Type cd Desktop/LDmicro &amp;gt;&amp;gt; Press ENTER &amp;gt;&amp;gt; Type '''avrdude -c usbasp -p m16 -U flash:w:normalcoil.hex '''&amp;gt;&amp;gt; Press ENTER&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open the '''Terminal''' by pressing '''CTRL+ALT+T''' keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
Go to the folder where you saved the '''hex file'''.&lt;br /&gt;
&lt;br /&gt;
Type the '''command''' as shown to upload this '''hex file''' to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Turn off the '''power supply'''.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp connection''' from the laptop.&lt;br /&gt;
&lt;br /&gt;
This will prevent any '''hardware''' damage.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| normalcoil.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us see the '''connection''' details now. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| normalcoil.png&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect '''GND pin''' of the red '''LED''' of '''Traffic Light module''' to '''GND pin''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Then connect the +5V '''pin''' of the red '''LED''' to '''PA0 pin''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Make the '''connections''' as shown in the picture.&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 turn on the '''power supply'''.&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 can observe that the red '''LED''' is glowing.&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;| That is the '''I/O pin PA0''' gives the '''output''' of the '''coil''' which is '''logic 1'''.&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;| Thus we learnt working of a '''Normal Coil''' using an '''LED'''.&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;| Turn off the '''power supply'''.&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;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 5: Summary&lt;br /&gt;
&lt;br /&gt;
* Normal Coil&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we learnt about the working of&lt;br /&gt;
&lt;br /&gt;
* '''Normal Coil'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 6: Evaluation&lt;br /&gt;
&lt;br /&gt;
Suppose that the '''input''' to '''Normal Coil''' is '''logic 0'''&lt;br /&gt;
&lt;br /&gt;
What will be the '''state/output''' of the '''Normal Coil'''?&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Here is a self assessment question for you:&lt;br /&gt;
&lt;br /&gt;
Suppose that the '''input''' to '''Normal Coil''' is '''logic 0'''.&lt;br /&gt;
&lt;br /&gt;
What will be the '''state''' of the '''Normal Coil''' ?&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 7: Answer &lt;br /&gt;
&lt;br /&gt;
The state of the Normal Coil will be 0&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The answer is the '''state''' of the '''Normal Coil''' will be '''0'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 8:&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 9:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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 10:&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;| &lt;br /&gt;
* 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 11:&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 12:&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 13:&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Negated-Coil-and-Negated-Contact/English</id>
		<title>OpenPLC-version1-with-LDmicro/C2/Negated-Coil-and-Negated-Contact/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Negated-Coil-and-Negated-Contact/English"/>
				<updated>2020-10-12T12:55:49Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: 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;'''Visual Cue'''&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;hr /&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''' Negated Coil &amp;amp; Negated Contact.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 2: Learning Objectives:&lt;br /&gt;
&lt;br /&gt;
* Negated Coil&lt;br /&gt;
* Negated Contact&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will learn about working of&lt;br /&gt;
&lt;br /&gt;
* '''Negated Coil'''&lt;br /&gt;
* '''Negated Contact'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 3: System Requirements&lt;br /&gt;
&lt;br /&gt;
* Ubuntu Linux 18.04''' '''OS&lt;br /&gt;
* LDmicro&lt;br /&gt;
* OpenPLC version 1 Mainboard&lt;br /&gt;
* 24V, 2A SMPS&lt;br /&gt;
* USBasp programmer&lt;br /&gt;
* Traffic Light module&lt;br /&gt;
* Switchboard module&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;
* '''OpenPLC version1 Mainboard'''&lt;br /&gt;
* '''24V, 2A SMPS'''&lt;br /&gt;
* '''USBasp''' programmer&lt;br /&gt;
* '''Traffic Light''' module&lt;br /&gt;
* '''Switchboard''' module&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;
* Program OpenPLC V1 Mainboard and&lt;br /&gt;
* Interface OpenPLC modules with Mainboard. &lt;br /&gt;
&lt;br /&gt;
If not, please refer to the relevant tutorials from [https://spoken-tutorial.org/ Home | spoken-tutorial.org]&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
* To follow this tutorial, you should know how to &lt;br /&gt;
&lt;br /&gt;
# program '''OpenPLC V1 Mainboard''' and&lt;br /&gt;
# interface '''OpenPLC''' modules with '''Mainboard'''. &lt;br /&gt;
&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;| Slide 5: Prerequisites - Hardware setup&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect''' SMPS''' and '''USBasp''' to the '''Mainboard''' as shown in the picture.&lt;br /&gt;
&lt;br /&gt;
Keep these connections throughout this tutorial.&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;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| First, we’ll learn about working of a '''Negated Coil'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click ‘Instructions -&amp;gt; Insert Coil’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a '''Coil''' from '''Instructions''' as shown.&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 coil&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on the '''Coil'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click ‘Negated’ radio button &amp;gt;&amp;gt; Type LED in the name column&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Select the ‘'''Negated'''’ option in the '''Type''' column. &lt;br /&gt;
&lt;br /&gt;
Rename the Coil as '''LED''' and 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 coil&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe a slash between the brackets for a '''Negated''' '''Coil'''.&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 will now check the working of this logic.&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; Real-time simulation’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us turn on the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Simulation mode.'''&lt;br /&gt;
&lt;br /&gt;
Next, start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Observe the state of '''YLED''' in the '''I/O list.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of YLED in I/O list at the bottom of the screen&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe that the state of '''YLED''' is 0.&lt;br /&gt;
&lt;br /&gt;
That is for a '''Negated''' '''Coil''' when the input is logic 1, the output will be logic 0.&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 &amp;gt;&amp;gt; Click Simulate -&amp;gt; Simulation Mode&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, turn off the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Halt Simulation.'''&lt;br /&gt;
&lt;br /&gt;
Then click '''Simulate''' and '''Simulation Mode.'''&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 the logic.&lt;br /&gt;
&lt;br /&gt;
The detailed steps on how to compile and save the logic are explained in the earlier tutorials. &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 on Microcontroller &amp;gt;&amp;gt; Select AVR ATmega16 40-PDIP &lt;br /&gt;
&lt;br /&gt;
Click on Settings &amp;gt;&amp;gt; Click on MCU parameters &amp;gt;&amp;gt; Change Crystal frequency to 16&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on '''Settings''' and select the microcontroller '''AVR ATmega16 40-PDIP.''' &lt;br /&gt;
&lt;br /&gt;
Adjust its parameters as shown here.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on YLED in I/O list &amp;gt;&amp;gt; Select PA0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then, assign '''pin PA0''' to the Coil '''YLED'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on Compile &amp;gt;&amp;gt; Click on Compile &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘negatedcoil.hex’ &amp;gt;&amp;gt; Click on Save.&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Compile the logic as '''negatedcoil.hex''' as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘negatedcoil.ld’ &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then save the ladder diagram as '''negatedcoil.ld''' 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;| Now we will see the working of this logic on hardware.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect Mainboard to PC using USBasp&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect the '''Mainboard''' to your laptop using '''USBasp'''.&lt;br /&gt;
&lt;br /&gt;
Turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open terminal &amp;gt;&amp;gt; Type cd Desktop/LDmicro &amp;gt;&amp;gt; Press ENTER &amp;gt;&amp;gt; type ‘'''avrdude -c usbasp -p m16 -U flash:w:negatedcoil.hex’ '''&amp;gt;&amp;gt; Press ENTER&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open the Terminal by pressing '''CTRL+ALT+T''' keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
Go to the folder where you have saved the hex file.&lt;br /&gt;
&lt;br /&gt;
Type the command as shown to upload the hex file to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
&lt;br /&gt;
This will prevent any hardware damage.&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;| Let us see the connection details now. &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;| Connect '''+5V pin''' of the red LED of '''Traffic Light module''' to '''5V pin''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Then connect the '''GND pin''' of the red LED to '''PA0 pin''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Make the connections as shown in the picture.&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;| Note the difference in the connections with that of a '''Normal Coil'''.&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;| After making all the connections properly turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to the output&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe that the red LED is glowing.&lt;br /&gt;
&lt;br /&gt;
That is the I/O pin '''PA0''' gives the output of the Coil which is logic 0.&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;| Thus we learnt the working of a Negated Coil using an LED.&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;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the connections made for this example.&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 learn about the working of '''Negated Contact.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch back to LDmicro&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;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Instead of creating a new file, we will make changes in the previous file itself.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor to the left of the coil &amp;gt;&amp;gt; Click on Instruction -&amp;gt; Insert Contact&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place a '''Contact''' to the left of the '''Coil''' as shown here.&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 Contact &amp;gt;&amp;gt; Check the ‘Negated' box&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on the '''Contact''' and check the '''Negated''' box.&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;| '''Negated Contact''' will pass the state of the signal when its state is logic 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type switch in the name box &amp;gt;&amp;gt; Click the OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the Contact as '''‘switch’''' and click the OK button.&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 will now check the working of this logic.&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 &amp;gt;&amp;gt; Click Simulate -&amp;gt; Real-time simulation&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the states of both Xswitch and YLED in the I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Observe the state of the '''Contact''' and the '''Coil''' in the '''I/O list'''.&lt;br /&gt;
&lt;br /&gt;
Initially the state of both '''Xswitch''' and '''YLED''' are 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Change the state of the '''Xswitch''' to 1.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the states of both Xswitch and YLED in the I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe that the state of '''YLED''' is also 1.&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;| Thus, when the state of a '''Negated Contact''' is 1 it doesn’t pass the signal through it.&lt;br /&gt;
&lt;br /&gt;
That is the output from a Negated Contact is 0, when its input is logic 1.&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 &amp;gt;&amp;gt; Click 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;| We will now compile this logic.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the status bar at the bottom of the screen&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe that the microcontroller and its parameters are already set.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch in I/O list &amp;gt;&amp;gt; Select PC0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Assign the '''pin PC0''' to '''Xswitch'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on Compile &amp;gt;&amp;gt; Click on Compile as &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘negatedcontact.hex’ &amp;gt;&amp;gt; Click on Save.&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Compile the logic as '''negatedcontact.hex '''using the '''‘Compile As’''' option. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save As &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘negated-contact.ld’ &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then save the ladder diagram as '''negatedcontact.ld '''using the '''‘Save As’''' option'''.'''&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 will see the working of this logic on hardware.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect Mainboard to PC using USBasp&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect the '''Mainboard''' to your laptop using '''USBasp'''.&lt;br /&gt;
&lt;br /&gt;
Turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch back to terminal &amp;gt;&amp;gt; type ‘'''avrdude -c usbasp -p m16 -U flash:w:negatedcontact.hex’ '''&amp;gt;&amp;gt; Press ENTER&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch back to the terminal.&lt;br /&gt;
&lt;br /&gt;
Go to the folder where you have saved the hex file.&lt;br /&gt;
&lt;br /&gt;
Type the command as shown and upload this hex file to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
&lt;br /&gt;
This will prevent any hardware damage.&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;| Let us see the connection details now. &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;| Connect '''GND''' and '''5V''' of switchboard to '''GND''' and '''5V''' of the '''Mainboard''' respectively.&lt;br /&gt;
&lt;br /&gt;
Then connect '''NO1''' of the '''switchboard''' to '''PC0''' of the '''Mainboard.'''&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;| Connect '''+5V pin''' of the red LED of '''Traffic Light module''' to '''5V pin''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Then connect the '''GND pin''' of the red LED to '''PA0 pin''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Make the connections as shown in the picture.&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;| After making all the connections properly, turn on the power supply.&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 can observe that the LED glows even before the switch '''NO1''' is pressed.&lt;br /&gt;
&lt;br /&gt;
The red LED turns off whenever the '''NO1''' is pressed.&lt;br /&gt;
&lt;br /&gt;
That is the corresponding switch LED and the red LED glows alternately.&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 connect '''PC0''' to '''NC1''' instead of '''NO1 '''as shown in the picture.&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;| Let us see the live demo now.&lt;br /&gt;
&lt;br /&gt;
We can observe the red LED is off initially.&lt;br /&gt;
&lt;br /&gt;
It is ON whenever the switch''' NC1''' is pressed.&lt;br /&gt;
&lt;br /&gt;
That is the corresponding switch LED and the red LED glows simultaneously.&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 connect '''PC0''' to '''L1 '''as shown in the picture.&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;| Initially, the red LED is on.&lt;br /&gt;
&lt;br /&gt;
The red LED turns off when the '''L1''' is pressed.&lt;br /&gt;
&lt;br /&gt;
Thus the corresponding switch LED and the red LED glows alternately.&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 shows how a '''Negated''' '''Contact''' behaves with different types of switches.&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;| Turn off the power supply.&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 5: Summary&lt;br /&gt;
&lt;br /&gt;
* Negated Coil&lt;br /&gt;
* Negated Contact&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we learnt about working of&lt;br /&gt;
&lt;br /&gt;
* Negated Coil&lt;br /&gt;
* Negated Contact&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 6: Assignment&lt;br /&gt;
&lt;br /&gt;
Try cross combination and observe the results&lt;br /&gt;
&lt;br /&gt;
* Normal Contact with Negated Coil&lt;br /&gt;
* Negated Contact with Normal Coil&lt;br /&gt;
&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;
Try cross combination and observe the results.&lt;br /&gt;
&lt;br /&gt;
That is, '''Normal Contact''' with the '''Negated Coil'''.&lt;br /&gt;
&lt;br /&gt;
And '''Negated Contact''' with the '''Normal Coil'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 7:&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 8:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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 9:&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;| &lt;br /&gt;
* 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 10:&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 11:&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 12:&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Normal-Contact/English</id>
		<title>OpenPLC-version1-with-LDmicro/C2/Normal-Contact/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Normal-Contact/English"/>
				<updated>2020-09-29T11:30:09Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: 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;'''Visual Cue'''&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;hr /&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 '''Normal Contact.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 2: Learning Objectives&lt;br /&gt;
&lt;br /&gt;
* Normal Contact&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will learn about the working of&lt;br /&gt;
&lt;br /&gt;
* '''Normal Contact'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 3: System Requirements&lt;br /&gt;
&lt;br /&gt;
* Ubuntu Linux 18.04''' '''OS&lt;br /&gt;
* LDmicro&lt;br /&gt;
* OpenPLC version 1 Mainboard&lt;br /&gt;
* 24V, 2A SMPS&lt;br /&gt;
* USBasp programmer&lt;br /&gt;
* Traffic Light module&lt;br /&gt;
* Switchboard module&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;
* '''OpenPLC version1 Mainboard'''&lt;br /&gt;
* 24V, 2A '''SMPS'''&lt;br /&gt;
* '''USBasp''' programmer&lt;br /&gt;
* '''Traffic Light''' module and &lt;br /&gt;
* '''Switchboard''' module&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;
* Program OpenPLC V1 Mainboard and&lt;br /&gt;
* Interface OpenPLC modules with Mainboard. &lt;br /&gt;
&lt;br /&gt;
If not, please refer to the relevant tutorials from [https://spoken-tutorial.org/ Home | spoken-tutorial.org]&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| * To follow this tutorial, you should know how to &lt;br /&gt;
** program '''OpenPLC V1 Mainboard''' and&lt;br /&gt;
** interface '''OpenPLC''' modules with the '''Mainboard'''. &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;| Slide 5: Prerequisites - Hardware setup&lt;br /&gt;
&lt;br /&gt;
hardware-prerequisite.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect''' SMPS''' and '''USBasp''' to the '''Mainboard''' as shown in the picture.&lt;br /&gt;
&lt;br /&gt;
Keep these connections throughout this tutorial.&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;| Now 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 ‘Instructions -&amp;gt; Insert Coil’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a '''Coil''' from '''Instructions'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the coil as LED. Click the OK button.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the''' Coil''' as '''LED '''as shown. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor to the left of the coil&lt;br /&gt;
&lt;br /&gt;
Click ‘Instruction -&amp;gt; Insert Contact’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor to the left of the '''Coil'''.&lt;br /&gt;
&lt;br /&gt;
Insert a '''Contact''' from Instructions.&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 contact&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on the '''Contact'''.&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;| A dialogue box opens.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight Negated&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can find a check-box called ‘'''Negated'''’ just below the name box.&lt;br /&gt;
&lt;br /&gt;
If it is checked then the Contact is a '''Negated Contact'''.&lt;br /&gt;
&lt;br /&gt;
If it is unchecked then the Contact is a '''Normal Contact.'''&lt;br /&gt;
&lt;br /&gt;
'''Normal Contact''' will pass the signal when its state is logic 1.&lt;br /&gt;
&lt;br /&gt;
Thus, we have two types of Contacts.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight Source column&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| These Contacts have three source types which are '''Internal Relay, Input pin, '''and''' Output pin'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight unchecked Negated box&lt;br /&gt;
&lt;br /&gt;
Highlight Input pin&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| By default, '''Negated''' is unchecked with source as ‘'''Input pin'''’.&lt;br /&gt;
&lt;br /&gt;
‘'''Input pin'''’ represents that Contact reads an input pin of the microcontroller.&lt;br /&gt;
&lt;br /&gt;
Don't change them.&lt;br /&gt;
&lt;br /&gt;
Keep the default settings as it is.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|-&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 will learn about other types of '''Contact''' and sources in the later tutorials.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename it as ‘switch’ &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the Contact as ‘'''switch'''’ and click the OK button.&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 will check the working of this logic.&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’ &amp;gt;&amp;gt; Click ‘Simulate -&amp;gt; Real-time simulation’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us turn on the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Simulation mode.'''&lt;br /&gt;
&lt;br /&gt;
Next, start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight state of Xswitch and YLED&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Observe the state of '''Xswitch''' and '''YLED''' in the '''I/O list'''.&lt;br /&gt;
&lt;br /&gt;
Initially, the state of '''Xswitch''' and '''YLED''' are 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The input to the '''Xswitch''' is logic 1 as it is connected to positive rail.&lt;br /&gt;
&lt;br /&gt;
Change the state of '''Xswitch''' to 1 by double clicking on it.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight state of YLED&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe that the state of the '''YLED''' has changed to 1.&lt;br /&gt;
&lt;br /&gt;
That means input to '''YLED''' is logic 1.&lt;br /&gt;
&lt;br /&gt;
This in turn indicates that output of '''Xswitch''' is logic 1.&lt;br /&gt;
&lt;br /&gt;
Thus, when the state of a '''Normal Contact''' is 1, it passes the signal through it.&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 &amp;gt;&amp;gt; Click Simulate -&amp;gt; Simulation Mode&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, turn off the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Halt Simulation.'''&lt;br /&gt;
&lt;br /&gt;
Then click '''Simulate''' and '''Simulation Mode'''&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 the logic.&lt;br /&gt;
&lt;br /&gt;
The detailed steps on how to compile and save the logic are explained in the earlier tutorials. &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 on Microcontroller &amp;gt;&amp;gt; Select AVR ATmega16 40-PDIP &lt;br /&gt;
&lt;br /&gt;
Click on Settings &amp;gt;&amp;gt; Click on MCU parameters &amp;gt;&amp;gt; Change Crystal frequency to 16 &amp;gt;&amp;gt;Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on '''Settings''' and select microcontroller '''AVR ATmega16 40-PDIP.''' &lt;br /&gt;
&lt;br /&gt;
Adjust its parameters as shown here.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch in I/O list &amp;gt;&amp;gt; Select PC0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Assign '''pin''' '''PA0''' to the Coil '''YLED'''. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on YLED in I/O list &amp;gt;&amp;gt; Select PA0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then assign the '''pin PC0''' to '''Xswitch'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on Compile &amp;gt;&amp;gt; Click on Compile as &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; rename it as ‘normalcontact.hex’ &amp;gt;&amp;gt; Click on Save.&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Compile it as ‘'''normalcontact.hex'''’.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save As &amp;gt;&amp;gt; Go to Desktop/LDmicro folder&amp;gt;&amp;gt; Rename it as ‘normalcontact.ld’ &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then save the ladder diagram as ‘'''normalcontact.ld'''’.&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 will see the working of this logic on hardware.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect Mainboard to PC using USBasp&lt;br /&gt;
&lt;br /&gt;
laptop-usbasp.jpg&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect the '''Mainboard''' to your laptop using '''USBasp'''.&lt;br /&gt;
&lt;br /&gt;
Turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Go to terminal &amp;gt;&amp;gt; type '''avrdude -c usbasp -p m16 -U flash:w:normalcontact.hex '''&amp;gt;&amp;gt; Press ENTER&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open the Terminal by pressing '''CTRL+ALT+T''' keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
Go to the folder where you have saved the hex file.&lt;br /&gt;
&lt;br /&gt;
Type the command as shown and upload this hex file to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
&lt;br /&gt;
This will prevent any hardware damage.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| normalcontact-NO.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us see the connection details now. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| normalcontact-NO.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect '''GND''' and 5V of the '''Switchboard''' to '''GND''' and 5V of the '''Mainboard''' respectively.&lt;br /&gt;
&lt;br /&gt;
Then connect '''NO1''' of the '''Switchboard''' to '''PC0''' of the '''Mainboard.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| normalcontact-NO.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect '''GND pin''' of the red LED of '''Traffic Light module''' to '''GND''' pin of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Then connect the +5V pin of the red LED to '''PA0 pin''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Make the connections as shown in the picture.&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;| After making all the connections properly, turn on the power supply.&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 can observe the red LED is off initially. &lt;br /&gt;
&lt;br /&gt;
It is ON whenever the '''NO1''' is pressed.&lt;br /&gt;
&lt;br /&gt;
That is the corresponding switch LED and the red LED glows simultaneously.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| normalcontact-NC.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now connect '''PC0''' to '''NC1''' instead of '''NO1 '''as shown in the picture.&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;| Let me show the live demo of the output.&lt;br /&gt;
&lt;br /&gt;
We can observe that the red LED glows even before the switch is pressed.&lt;br /&gt;
&lt;br /&gt;
And turns off whenever the '''NC1''' is pressed.&lt;br /&gt;
&lt;br /&gt;
That is the corresponding switch LED and the red LED glows alternately.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| normalcontact-L.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now connect '''PC0''' to '''L1 '''as shown in the picture.&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;| Initially, the red LED is off.&lt;br /&gt;
&lt;br /&gt;
When '''L1''' is pressed, both''' L1 '''switch LED and the red LED turns on.&lt;br /&gt;
&lt;br /&gt;
The LED will turn off when we press '''L1''' one more time as these are latch switches.&lt;br /&gt;
&lt;br /&gt;
Thus, the corresponding switch LED and the red LED glows simultaneously.&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 shows how a '''Normal''' '''Contact''' behaves with different types of switches.&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;| Turn off the power supply.&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 5: Summary&lt;br /&gt;
&lt;br /&gt;
* Normal Contact&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we learnt about working of&lt;br /&gt;
&lt;br /&gt;
* '''Normal Contact'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 6: Evaluation&lt;br /&gt;
&lt;br /&gt;
Suppose that the input to Normal Contact is logic 0 with its state as logic 1&lt;br /&gt;
&lt;br /&gt;
What will be the state/output of the Normal Coil?&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Here is a self assessment question for you:&lt;br /&gt;
&lt;br /&gt;
Suppose that the input to '''Normal Contact''' is logic 0 with its state as logic 1.&lt;br /&gt;
&lt;br /&gt;
What will be the state of the '''Normal Coil''' ?&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 7: Answer &lt;br /&gt;
&lt;br /&gt;
The state of the Normal Coil will be 0&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The answer is the state of the '''Normal Coil''' will be 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 8:&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 9:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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 10:&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;| * 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 11:&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 12:&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 13:&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Normal-Coil/English</id>
		<title>OpenPLC-version1-with-LDmicro/C2/Normal-Coil/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Normal-Coil/English"/>
				<updated>2020-08-12T11:34:16Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: 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;'''Visual Cue'''&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;hr /&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 '''Normal Coil.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 2: Learning Objectives&lt;br /&gt;
&lt;br /&gt;
* Normal Coil &lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will learn about the working of&lt;br /&gt;
&lt;br /&gt;
* '''Normal Coil '''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 3: System Requirements&lt;br /&gt;
&lt;br /&gt;
* Ubuntu Linux 18.04''' '''OS&lt;br /&gt;
* LDmicro&lt;br /&gt;
* OpenPLC version 1 Mainboard&lt;br /&gt;
* 24V, 2A SMPS&lt;br /&gt;
* USBasp programmer&lt;br /&gt;
* Traffic Light module&lt;br /&gt;
* Switchboard module&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;
* '''OpenPLC version1 Mainboard'''&lt;br /&gt;
* 24V, 2A '''SMPS'''&lt;br /&gt;
* '''USBasp''' programmer&lt;br /&gt;
* '''Traffic Light''' module and &lt;br /&gt;
* '''Switchboard''' module&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;
* Program OpenPLC V1 Mainboard and&lt;br /&gt;
* Interface OpenPLC modules with Mainboard. &lt;br /&gt;
&lt;br /&gt;
If not, please refer to the relevant tutorials from [https://spoken-tutorial.org/ Home | spoken-tutorial.org]&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;|&lt;br /&gt;
* To follow this tutorial, you should know how to &lt;br /&gt;
** program '''OpenPLC V1 Mainboard''' and&lt;br /&gt;
** interface '''OpenPLC''' modules with '''Mainboard'''. &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;| Slide 5: Prerequisites - Hardware setup&lt;br /&gt;
&lt;br /&gt;
hardware-prerequisite.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect''' SMPS''' and '''USBasp''' to the '''Mainboard''' as shown in the picture.&lt;br /&gt;
&lt;br /&gt;
Keep these connections throughout this tutorial.&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 ‘Instructions -&amp;gt; Insert Coil’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a '''Coil''' from '''Instructions''' 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;| We can observe that '''Coil''' is an output instruction.&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 coil&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on the '''Coil'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight ‘Type’ and ‘Source’&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| A dialogue box opens.&lt;br /&gt;
&lt;br /&gt;
Here we can see two columns named '''‘Type’''' and '''‘Source’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to the types&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can see there are four types of '''coils'''.&lt;br /&gt;
&lt;br /&gt;
They are '''Normal''', '''Negated''', '''SET-Only''' and '''RESET-Only''' '''Coils'''.&lt;br /&gt;
&lt;br /&gt;
These coils have two source types which are''' Pin''' '''on MCU''' and '''Internal Relay'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to Normal, Pin on MCU&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| By default, the type of the coil is set to '''‘Normal’''' and source to '''‘Pin on MCU’'''.&lt;br /&gt;
&lt;br /&gt;
'''Pin on MCU''' means that the coil represents a pin on the microcontroller.&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;| Don’t change them. &lt;br /&gt;
&lt;br /&gt;
Keep the default settings as it is.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to other types&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will learn about other types of '''Coils''' and source types in the later tutorials.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the coil as LED. Click the OK button.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the''' Coil''' as '''LED''' and click on the OK button.&lt;br /&gt;
&lt;br /&gt;
Remember that '''LDmicro''' is case sensitive.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the rung &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Note that the Coil is directly connected to the positive rail.&lt;br /&gt;
&lt;br /&gt;
So, the input to the Coil is logic 1.&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 will check the working of this logic.&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’ &amp;gt;&amp;gt; Click ‘Simulate -&amp;gt; Real-time simulation’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us turn on the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Simulation mode.'''&lt;br /&gt;
&lt;br /&gt;
Next, start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight state of YLED in the I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Observe the state of '''YLED''' in the '''I/O list.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of LED in I/O list at the bottom of the screen&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe the state of '''YLED''' is 1.&lt;br /&gt;
&lt;br /&gt;
That is for a '''Normal Coil''' when the input is true, the output is also true.&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' &amp;gt;&amp;gt; Click 'Simulate -&amp;gt; Simulation Mode'&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, turn off the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Halt Simulation.'''&lt;br /&gt;
&lt;br /&gt;
Then click '''Simulate''' and '''Simulation Mode'''&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 the logic.&lt;br /&gt;
&lt;br /&gt;
The detailed steps on how to compile and save the logic are explained in the earlier tutorials. &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 on Microcontroller &amp;gt;&amp;gt; Select AVR ATmega16 40-PDIP &lt;br /&gt;
&lt;br /&gt;
Click on Settings &amp;gt;&amp;gt; Click on MCU parameters &amp;gt;&amp;gt; Change Crystal frequency to 16 &amp;gt;&amp;gt;Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on '''Settings''' and select the microcontroller '''AVR ATmega16 40-PDIP.''' &lt;br /&gt;
&lt;br /&gt;
Adjust its parameters as shown here.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on YLED in I/O list &amp;gt;&amp;gt; Select PA0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on the YLED in the I/O list.&lt;br /&gt;
&lt;br /&gt;
Then, assign '''pin''' '''PA0''' to the coil ‘'''YLED'''’.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on Compile &amp;gt;&amp;gt; Click on Compile &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘normalcoil.hex’ &amp;gt;&amp;gt; Click on Save.&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Compile the logic and save the hex file as ‘'''normalcoil.hex'''’.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘normalcoil.ld’ &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then save the ladder diagram as ‘'''normalcoil.ld'''’.&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 will see the working of this logic on hardware.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect Mainboard to PC using USBasp&lt;br /&gt;
&lt;br /&gt;
laptop-usbasp.jpg&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect the '''Mainboard''' to your laptop using '''USBasp'''.&lt;br /&gt;
&lt;br /&gt;
Turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open terminal &amp;gt;&amp;gt; Type cd Desktop/LDmicro &amp;gt;&amp;gt; Press ENTER &amp;gt;&amp;gt; Type '''avrdude -c usbasp -p m16 -U flash:w:normalcoil.hex '''&amp;gt;&amp;gt; Press ENTER&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open the Terminal by pressing '''CTRL+ALT+T''' keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
Go to the folder where you saved the hex file.&lt;br /&gt;
&lt;br /&gt;
Type the command as shown to upload this hex file to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
&lt;br /&gt;
This will prevent any hardware damage.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| normalcoil.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us see the connection details now. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| normalcoil.png&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect '''GND pin''' of the red LED of '''Traffic Light module''' to '''GND''' pin of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Then connect the +5V pin of the red LED to '''PA0 pin''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Make the connections as shown in the picture.&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 turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| video-normalcoil.mp4&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe that the red LED is glowing.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| video-normalcoil.mp4&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| That is the I/O pin PA0 gives the output of the coil which is logic 1.&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;| Thus we learnt working of a '''Normal''' '''Coil''' using an LED.&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;| Turn off the power supply.&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;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 5: Summary&lt;br /&gt;
&lt;br /&gt;
* Normal Coil&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we learnt about the working of&lt;br /&gt;
&lt;br /&gt;
* Normal Coil&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 6: Evaluation&lt;br /&gt;
&lt;br /&gt;
Suppose that the input to Normal Coil is logic 0&lt;br /&gt;
&lt;br /&gt;
What will be the state/output of the Normal Coil?&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Here is a self assessment question for you:&lt;br /&gt;
&lt;br /&gt;
Suppose that the input to Normal Coil is logic 0.&lt;br /&gt;
&lt;br /&gt;
What will be the state of the Normal Coil ?&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 7: Answer &lt;br /&gt;
&lt;br /&gt;
The state of the Normal Coil will be 0&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The answer is the state of the Normal Coil will be 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 8:&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 9:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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 10:&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;| &lt;br /&gt;
* 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 11:&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 12:&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 13:&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Programming-OpenPLC/English</id>
		<title>OpenPLC-version1-with-LDmicro/C2/Programming-OpenPLC/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Programming-OpenPLC/English"/>
				<updated>2020-08-04T05:09:36Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: 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;'''Visual Cue'''&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;hr /&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 '''Programming OpenPLC'''.&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;
* How to program the OpenPLC version 1 Mainboard&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will learn&lt;br /&gt;
&lt;br /&gt;
* How to program the '''OpenPLC''' '''version 1 Mainboard'''&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;
* OpenPLC version 1 Mainboard&lt;br /&gt;
* 24V, 2A SMPS&lt;br /&gt;
* USBasp programmer&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;
* '''OpenPLC''' '''version 1''' '''Mainboard'''&lt;br /&gt;
* '''24V, 2A SMPS'''&lt;br /&gt;
* '''USBasp''' programmer&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 4: &lt;br /&gt;
&lt;br /&gt;
Pre-requisites&lt;br /&gt;
&lt;br /&gt;
* How to generate a hex file of a ladder diagram in '''LDmicro'''. &lt;br /&gt;
* If not, please refer to the relevant tutorials 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 generate hex file of 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;| Now, we’ll see how to upload a program to '''OpenPLC version 1 Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 5: Code file - sample.hex&lt;br /&gt;
&lt;br /&gt;
* The files used in this tutorial are available in the Code Files link on this tutorial page&lt;br /&gt;
* Please download and extract them&lt;br /&gt;
* Make a copy and then use them while practising&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will use the '''sample.hex '''file which was created earlier.&lt;br /&gt;
&lt;br /&gt;
* The files used in this tutorial are available in the Code Files link on this tutorial page.&lt;br /&gt;
* Please download and extract them&lt;br /&gt;
* Make a copy and then 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;| Slide6:&lt;br /&gt;
&lt;br /&gt;
USBasp-programmer.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We are using a '''USBasp''', to program our '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 7: &lt;br /&gt;
&lt;br /&gt;
Mainboard-computer-connection.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Make the connections as shown in the picture.&lt;br /&gt;
&lt;br /&gt;
Connect SMPS and USBasp to the Mainboard as shown here.&lt;br /&gt;
&lt;br /&gt;
Recall that we have explained these connections in the earlier tutorials.&lt;br /&gt;
&lt;br /&gt;
Turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
Make sure that one of the LEDs on USBasp is glowing.&lt;br /&gt;
&lt;br /&gt;
This indicates that the programmer is connected properly.&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;| Open Terminal by pressing '''CTRL+ALT+T''' keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
If you’re a '''Windows''' user open command prompt.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type cd Desktop/LDmicro&lt;br /&gt;
&lt;br /&gt;
Press ENTER&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type '''cd Desktop/LDmicro''' and press Enter.&lt;br /&gt;
&lt;br /&gt;
I have saved a file '''sample.hex '''in the above folder.&lt;br /&gt;
&lt;br /&gt;
Go to the location where you’ve saved the hex file.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type, &lt;br /&gt;
&lt;br /&gt;
'''avrdude -c usbasp -p m16 -U flash:w:sample.hex'''&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now type the command as shown.&lt;br /&gt;
&lt;br /&gt;
For uploading the program we are using a command line tool, '''AVRDUDE'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight according to narration&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| -c indicates the programmer id of the programmer.&lt;br /&gt;
&lt;br /&gt;
Since we are using an USBasp programmer, here the id is given as '''usbasp'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight according to narration&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''-p''' indicates the part number of the microcontroller that we are using.&lt;br /&gt;
&lt;br /&gt;
In our case it is '''ATMEGA16'''. &lt;br /&gt;
&lt;br /&gt;
So we have specified it as '''m16'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight according to narration&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''-U''' handles all memory read and write operations.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type flash&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''flash '''indicates the flash memory and '''w '''indicates the write operations.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight according to narration&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''sample.hex''' is the file that we want to upload.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Press ENTER&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Press '''ENTER.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight red light&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can see another LED on the '''USBasp''' is blinking.&lt;br /&gt;
&lt;br /&gt;
This indicates that it is communicating with the '''Mainboard''' appropriately.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight avrdude: 364 bytes of flash verified &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In the terminal, we get&lt;br /&gt;
&lt;br /&gt;
'''avrdude: 364 bytes of flash verified''' &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the output&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Note that the number of bytes varies from program to program.&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;| If you don’t get either of the indications, it means that programming isn’t done properly.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 8:&lt;br /&gt;
&lt;br /&gt;
Additional Reading Material&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Refer to the Additional reading material of this tutorial to know more about:&lt;br /&gt;
&lt;br /&gt;
# Precautions that should be taken before programming.&lt;br /&gt;
# Ways of troubleshoot when the Mainboard is not programmed properly.&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;| Let us see various part numbers for different controllers &amp;amp; programmers.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 9: Controller’s part number list&lt;br /&gt;
&lt;br /&gt;
List of part number for Controllers and Programmers is given in the below link:&lt;br /&gt;
&lt;br /&gt;
[https://www.nongnu.org/avrdude/user-manual/avrdude_4.html#Option-Descriptions https://www.nongnu.org/avrdude/user-manual/avrdude_4.html#Option-Descriptions]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Highlight with box&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Go to the given link.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight m16&lt;br /&gt;
&lt;br /&gt;
Highlight usbasp&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we have used '''ATmega16'''. &lt;br /&gt;
&lt;br /&gt;
We can observe that the part id is '''m16 '''according to the list.&lt;br /&gt;
&lt;br /&gt;
The part id of '''USBasp programmer''' as '''‘usbasp’'''.&lt;br /&gt;
&lt;br /&gt;
You can refer to this manual, if you are using a different microcontroller or programmer.&lt;br /&gt;
&lt;br /&gt;
It also contains the information of the command line options to control AVRDUDE’s behavior.&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 10:&lt;br /&gt;
&lt;br /&gt;
Summary&lt;br /&gt;
&lt;br /&gt;
We have learnt how to&lt;br /&gt;
&lt;br /&gt;
* Program the OpenPLC version 1 Mainboard&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;
* Program the '''OpenPLC version 1 Mainboard'''&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;
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 13:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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 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;| &lt;br /&gt;
* 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 15:&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;|&lt;br /&gt;
* Do you have any general / technical questions on '''OpenPLC'''?&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 16:&lt;br /&gt;
&lt;br /&gt;
Acknowledgement&lt;br /&gt;
| style=&amp;quot;border:0.5pt 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 17:&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/OpenPLC-version-1-Mainboard/English</id>
		<title>OpenPLC-version1-with-LDmicro/C2/OpenPLC-version-1-Mainboard/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/OpenPLC-version-1-Mainboard/English"/>
				<updated>2020-03-17T10:02:37Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: 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;'''Visual Cue'''&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;hr /&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 '''OpenPLC version 1 Main board'''.&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;
* Various Components on''' OpenPLC version 1 Main board'''&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will learn about&lt;br /&gt;
&lt;br /&gt;
* Various components of''' OpenPLC version 1 Main board'''&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;
* OpenPLC version 1 Main board&lt;br /&gt;
* 24V, 2A SMPS&lt;br /&gt;
* USBasp programmer&lt;br /&gt;
* Ubuntu Linux 18.04 operating system&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;
* '''OpenPLC''' version 1 Main board&lt;br /&gt;
* 24V, 2A '''SMPS'''&lt;br /&gt;
* '''USBasp''' programmer&lt;br /&gt;
* '''Ubuntu Linux 18.04''' operating system&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 4:&lt;br /&gt;
&lt;br /&gt;
OpenPLC hardware&lt;br /&gt;
&lt;br /&gt;
* Affordable, open source and modular hardware&lt;br /&gt;
* Flexible and can be interfaced with any electronic module&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
* '''OpenPLC''' is an affordable, open source &amp;amp; modular hardware developed at '''IIT Bombay''' by '''FOSSEE''' team.&lt;br /&gt;
* This board is flexible and can be interfaced with any electronic module available in the market.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Development-board.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This is a picture of '''OpenPLC''' '''version 1 Main board.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| power-unit.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This highlighted section is the power unit of the board.&lt;br /&gt;
&lt;br /&gt;
It is further subdivided into input and output power sections.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Input Power Section:&lt;br /&gt;
&lt;br /&gt;
input-power-unit.png&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will now take a look at the input power section of the board.&lt;br /&gt;
&lt;br /&gt;
The board must be powered using 24 volt '''DC''' power supply.&lt;br /&gt;
&lt;br /&gt;
The 24 volt and 12 volt connections are capable of handling upto 2 amperes of current.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight input power screw terminals&lt;br /&gt;
&lt;br /&gt;
(input-power-unit.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The on board 24V input power terminals are shown on your screen marked '''GND '''which is ground, and '''24V'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| SMPS.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We are using a 24V, 2A '''SMPS''' for power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight L, N, GND&lt;br /&gt;
&lt;br /&gt;
(SMPS-front.jpg)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We have to connect line, neutral and ground terminals of 3-pin '''AC''' power cord to '''SMPS'''.&lt;br /&gt;
&lt;br /&gt;
Make sure that you identify the terminals of 3-pin '''AC''' power cord correctly.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight -V, +V&lt;br /&gt;
&lt;br /&gt;
(input-power-connections.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect the +V and -V ends of the '''SMPS''' to '''24V''' and '''GND''' of the main board as shown here.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| wrong-connection.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| While making connections, make sure that exposed metal from the wire is not protruding out.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| wrong-connection.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This is a wrong way to connect a wire.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| wrong-connection.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We should not connect the wires in this fashion as this may cause electrical shorts later on.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| correct-connection.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This is a right way to connect a wire.&lt;br /&gt;
&lt;br /&gt;
Tighten the screws properly. &lt;br /&gt;
&lt;br /&gt;
Tug the wire moderately to ensure that they are secured in place.&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;| After making all the connections properly, turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| D2-glow.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Make sure that the '''D2 LED''' is glowing on your board which indicates that the board is powered up.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Output power section:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;lt;output-power-pins.png with labels&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will now take a look at the output power section.&lt;br /&gt;
&lt;br /&gt;
'''24, 12, 5 V and Ground '''outputs are provided for connections with external modules.&lt;br /&gt;
&lt;br /&gt;
The connections are provided through 4 different types of connectors, they are:&lt;br /&gt;
&lt;br /&gt;
* '''Relimate'''&lt;br /&gt;
* '''Male berg strip'''&lt;br /&gt;
* '''Female berg strip'''&lt;br /&gt;
* '''Screw terminal'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight relimate connectors&lt;br /&gt;
&lt;br /&gt;
(output-power-pins.png)&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| There are 4 '''relimate''' connectors on the board as marked in the picture.&lt;br /&gt;
&lt;br /&gt;
Most of the modules developed by''' FOSSEE '''will be compatible with these connectors.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight relimate connectors&lt;br /&gt;
&lt;br /&gt;
(output-power-pins.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| These will be easier to access with multi strand cables, if you do not have single strand cables.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight female and male connectors&lt;br /&gt;
&lt;br /&gt;
output-power-pins.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Some external modules in the market are available with either male or female berg connections.&lt;br /&gt;
&lt;br /&gt;
In order to accommodate both types of modules, we have male as well as female connectors.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight microcontroller&lt;br /&gt;
&lt;br /&gt;
(Development-board.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| At the heart of the main board is '''ATMega16''' microcontroller.&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;| The microcontroller has 4 ports namely '''PORTA''', '''PORTB''', '''PORTC''' and '''PORTD'''. &lt;br /&gt;
&lt;br /&gt;
These ports may be configured to use as a digital input or digital output as desired.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| portA.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''Port A''' can be accessed from pin 0 to 7 through this section as labelled.&lt;br /&gt;
&lt;br /&gt;
'''Port A''' can also be configured as analog inputs.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight 4 pins beside port A&lt;br /&gt;
&lt;br /&gt;
(portA.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The 4 pins marked doesn’t belong to '''Port A'''. &lt;br /&gt;
&lt;br /&gt;
They are output power pins as described before.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| portB.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''Port B''' can be accessed from pin 0 to 7 through this section as labelled.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| portC.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Similarly, '''PORT C''' &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| portD.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| And '''PORT D'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight female, male berg connectors and screw terminals(separately)&lt;br /&gt;
&lt;br /&gt;
(portD.png)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can connect external inputs or outputs to the board in either of the 3 ways:&lt;br /&gt;
&lt;br /&gt;
* Female berg connectors or&lt;br /&gt;
* Male berg connectors &lt;br /&gt;
* Screw terminals.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| reset.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can reset the program in the microcontroller using the '''RESET''' button.&lt;br /&gt;
&lt;br /&gt;
Pressing the '''RESET''' button will only reset the state of program variables.&lt;br /&gt;
&lt;br /&gt;
It will not erase the program from the microcontroller.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| ISP-header.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This is a standard '''ISP header''' to program the microcontroller.&lt;br /&gt;
&lt;br /&gt;
We can connect an external programmer to this header and program the controller.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| ISP-connection1.jpg&lt;br /&gt;
&lt;br /&gt;
ISP-connection2.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To connect the header, simply match the notch on the '''ISP''' cable with the groove in the header as shown.&lt;br /&gt;
&lt;br /&gt;
The programmer shown in this tutorial is an '''USBasp programmer'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| UART.png&lt;br /&gt;
&lt;br /&gt;
(Highlight UART pins with red box)&lt;br /&gt;
&lt;br /&gt;
Highlight status LEDs &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The '''UART''' pins along with 5V and GND are provided to attach an external UART module.&lt;br /&gt;
&lt;br /&gt;
The pin arrangements are shown in the picture.&lt;br /&gt;
&lt;br /&gt;
There are two status leds near the header to notify communication status.&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;
Points to remember:&lt;br /&gt;
&lt;br /&gt;
* Most of the modules developed by FOSSEE run on 12 volts&lt;br /&gt;
* 24 volt connection is also provided &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Points to remember:&lt;br /&gt;
&lt;br /&gt;
* Almost all the modules developed by FOSSEE are designed to work with 12 volts.&lt;br /&gt;
* But since most '''PLC''' modules operate on 24 volts, we are providing an option to access 24V on board.&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 6: &lt;br /&gt;
&lt;br /&gt;
Summary&lt;br /&gt;
&lt;br /&gt;
In this tutorial, we learnt about &lt;br /&gt;
&lt;br /&gt;
* Various components on''' OpenPLC version 1 Main board'''&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Summary:&lt;br /&gt;
&lt;br /&gt;
In this tutorial, we learnt about &lt;br /&gt;
&lt;br /&gt;
* Various components of '''OpenPLC version 1 Main board'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 7:&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 8:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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 9:&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 10:&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 11:&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 12:&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Simulation-and-Compilation/English</id>
		<title>OpenPLC-version1-with-LDmicro/C2/Simulation-and-Compilation/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Simulation-and-Compilation/English"/>
				<updated>2020-03-16T11:35:20Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: 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;'''Visual Cue'''&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;hr /&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Introduction-to-LDmicro/English</id>
		<title>OpenPLC-version1-with-LDmicro/C2/Introduction-to-LDmicro/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Introduction-to-LDmicro/English"/>
				<updated>2020-03-16T10:34:02Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: 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;'''Visual Cue'''&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;hr /&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 '''Introduction to 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;
* Explore LDmicro interface&lt;br /&gt;
* Create a simple ladder logic &lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will &lt;br /&gt;
&lt;br /&gt;
* Explore '''LDmicro''' interface and &lt;br /&gt;
* Create a simple '''ladder logic'''&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 and&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 4:&lt;br /&gt;
&lt;br /&gt;
Pre-requisites &lt;br /&gt;
&lt;br /&gt;
* LDmicro should have installed on your system&lt;br /&gt;
* If not, please refer to the relevant LDMicro tutorials on this website&lt;br /&gt;
&lt;br /&gt;
https://spoken-tutorial.org&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To follow this tutorial, you should have '''LDmicro''' installed on your system.&lt;br /&gt;
&lt;br /&gt;
If not, please refer to the relevant '''LDMicro''' tutorials on this website.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type LDmicro&lt;br /&gt;
&lt;br /&gt;
Click on LDmicro icon&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us launch the ‘'''LDmicro'''’ interface in linux.&lt;br /&gt;
&lt;br /&gt;
Go to the unity search bar and type ‘'''LDmicro'''’. &lt;br /&gt;
&lt;br /&gt;
Double click on the ‘'''LDmicro'''’ icon.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open terminal&lt;br /&gt;
&lt;br /&gt;
Type ldmicro&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| You can also launch LDmciro through terminal.&lt;br /&gt;
&lt;br /&gt;
Open the terminal by pressing '''Ctrl + Alt + T''' keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
Type '''ldmicro'''.&lt;br /&gt;
&lt;br /&gt;
Note that all the letters in '''LDmicro''' are small case.&lt;br /&gt;
&lt;br /&gt;
Press '''ENTER.'''&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;| '''Windows''' users can launch it by double-clicking the executable file.&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 can see '''Program editor '''window opens.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point rungs&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The horizontal lines in which we write our ladder diagram are called '''Rungs'''.&lt;br /&gt;
&lt;br /&gt;
The '''Rung''' with '''‘END’''' instruction denotes the end of the ladder diagram.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point rails&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The two vertical lines at the start and end of each rung are called '''Rails'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point left rail&lt;br /&gt;
&lt;br /&gt;
Point right rail&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The left rail is connected to '''Positive''', and the right rail is connected to '''Ground'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Show the direction of current flow&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Thus, the current flows from left rail to right rail.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight ‘Instructions’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, we’ll see about instructions &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 4:&lt;br /&gt;
&lt;br /&gt;
Instructions&lt;br /&gt;
&lt;br /&gt;
* Mainly two types, Input and Output instructions&lt;br /&gt;
* Output instructions are always the last instruction in a rung &lt;br /&gt;
* Minimum of one output instruction in a rung&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| * In''' ladder logic''', we categorize instructions mainly as input and output instructions.&lt;br /&gt;
* Output instructions are always the last instruction in a rung&lt;br /&gt;
* Every '''rung''' must have a minimum of one output 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 we will learn how to place instructions in '''LDmicro'''.&lt;br /&gt;
&lt;br /&gt;
|-&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;
Click on ‘Instructions’ and highlight the elements&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch back to '''LDmicro''' interface.&lt;br /&gt;
&lt;br /&gt;
In the top menu bar, click on '''Instructions'''.&lt;br /&gt;
&lt;br /&gt;
There are many elements available under '''Instructions'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point cursor&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Every instruction is placed at the current cursor position.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Instruction &amp;gt;&amp;gt; Insert Contact&lt;br /&gt;
&lt;br /&gt;
Highlight the Keyboard shortcuts&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will first place a '''contact''' by clicking on '''Instructions -&amp;gt; Insert Contacts.'''&lt;br /&gt;
&lt;br /&gt;
The letter ‘C’ in the '''Insert Contacts menu '''represents the keyboard shortcut.&lt;br /&gt;
&lt;br /&gt;
You can either use the menu or the shortcut keys to place the instruction.&lt;br /&gt;
&lt;br /&gt;
We can see that the cursor is blinking before the new '''Contact'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to Xnew&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can now see that the contact is inserted at the current cursor position. &lt;br /&gt;
&lt;br /&gt;
It is named as '''Xnew''' by default.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can see a I/O list at the bottom of the window.&lt;br /&gt;
&lt;br /&gt;
All the variables used in the program will be displayed in this''' I/O list.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to the icon and show the tooltip&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Below the menu bar, you can see a toolbar with icons which are frequently used.&lt;br /&gt;
&lt;br /&gt;
For example, the first icon is '''‘Normal contact’'''. &lt;br /&gt;
&lt;br /&gt;
You can use this tool bar as well to place instructions.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Demo of cursor position&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Next we will place a '''Coil'''.&lt;br /&gt;
&lt;br /&gt;
For that, place the cursor to the right end of the '''Contact'''.&lt;br /&gt;
&lt;br /&gt;
This can be done by clicking with the mouse pointer at the appropriate position.&lt;br /&gt;
&lt;br /&gt;
Otherwise with the help of arrow keys you can change the cursor position.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| click on '''Instructions-&amp;gt;Insert Coil'''&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In the menu bar, click on '''Instructions-&amp;gt;Insert Coil'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight Contact and Coil&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe that the '''contact''' appears red whereas '''coil''' in white.&lt;br /&gt;
&lt;br /&gt;
This is because an instruction gets highlighted when cursor is placed near it.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the coil and right power rail&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Here, the '''coil''' is placed automatically at the extreme right of the '''rung.'''&lt;br /&gt;
&lt;br /&gt;
This is because it is an output instruction.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor on the right side of the coil&lt;br /&gt;
&lt;br /&gt;
Click on ‘Instructions’&lt;br /&gt;
&lt;br /&gt;
HIghlight Instructions list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Try placing an instruction to the right of the '''Coil'''.&lt;br /&gt;
&lt;br /&gt;
Place the cursor to the right of the '''coil'''.&lt;br /&gt;
&lt;br /&gt;
Click on '''‘Instructions’.'''&lt;br /&gt;
&lt;br /&gt;
We can see that no instruction is enabled.&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, no other instruction can be placed at the right of an output instruction.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor on the right side of the coil&lt;br /&gt;
&lt;br /&gt;
Click on ‘Instructions’&lt;br /&gt;
&lt;br /&gt;
Highlight ‘Insert Contact’&lt;br /&gt;
&lt;br /&gt;
Highlight ‘Insert Coil’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| If we move the cursor to the left of the coil, we can place another '''contact.'''&lt;br /&gt;
&lt;br /&gt;
But we cannot place a '''coil'''.&lt;br /&gt;
&lt;br /&gt;
Place the cursor to the left of the '''coil.'''&lt;br /&gt;
&lt;br /&gt;
Click on '''Instructions.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the instructions which are disabled&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe few instructions are disabled.&lt;br /&gt;
&lt;br /&gt;
These are output instructions.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight instructions on Instructions list except ‘Insert Contact’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''Contact''' is an example of an input instruction.&lt;br /&gt;
&lt;br /&gt;
There are many such input instructions.&lt;br /&gt;
&lt;br /&gt;
We will learn about different instructions and their behavior later in this series.&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 can even add multiple input and output instructions in a single '''rung'''.&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;
Multiple inputs and Multiple outputs&lt;br /&gt;
&lt;br /&gt;
* Multiple inputs can be connected either in series or in parallel.&lt;br /&gt;
* Multiple outputs in series is not preferred.&lt;br /&gt;
* We can add multiple outputs in parallel.&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| * Multiple inputs can be connected either in series or in parallel.&lt;br /&gt;
* Whereas, multiple outputs in series is not preferred.&lt;br /&gt;
* However, we can add multiple outputs in parallel.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch back to LDmicro&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;| Place the cursor below the ‘switch’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| First, we will see how to place input instructions in parallel.&lt;br /&gt;
&lt;br /&gt;
Place the cursor below the '''Contact.'''&lt;br /&gt;
&lt;br /&gt;
We can see the cursor blinking horizontally.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click Instruction &amp;gt;&amp;gt; Insert Contacts&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a '''Contact''' by clicking '''Normal Contact''' icon.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor to the right of the first contact&lt;br /&gt;
&lt;br /&gt;
Click ‘Normal Contact’ icon&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, we will see how to place input instructions in series.&lt;br /&gt;
&lt;br /&gt;
We can add another contact in series to the first Contact.&lt;br /&gt;
&lt;br /&gt;
Place the cursor to the right of the first Contact.&lt;br /&gt;
&lt;br /&gt;
Now, we can see the cursor blinking vertically.&lt;br /&gt;
&lt;br /&gt;
Insert '''Contact''' as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor below the coil&lt;br /&gt;
&lt;br /&gt;
Click on ‘Normal Coil’ icon&lt;br /&gt;
&lt;br /&gt;
Highlight both the coils in parallel&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Similarly, we can add '''Coils''' in parallel as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place cursor to the left of the coil in the first rung.&lt;br /&gt;
&lt;br /&gt;
Click on ‘Instructions’&lt;br /&gt;
&lt;br /&gt;
Point ‘Insert Coil’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us try to add two coils in series.&lt;br /&gt;
&lt;br /&gt;
Place the cursor to the left of the coil in the first rung. &lt;br /&gt;
&lt;br /&gt;
Click on '''Instructions'''.&lt;br /&gt;
&lt;br /&gt;
Notice that we are unable to add coils in series.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight ‘Edit’ in the top menu bar&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can also delete a particular instruction or an entire '''rung'''.&lt;br /&gt;
&lt;br /&gt;
Now let us see how to delete.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Select the Contact in series with ‘switch’&lt;br /&gt;
&lt;br /&gt;
Click ‘Edit &amp;gt;&amp;gt; Delete Selected Rung’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Select the newly added contact which is in series with the first '''Contact'''.&lt;br /&gt;
&lt;br /&gt;
In the menu bar, Click on ‘'''Edit'''’ &lt;br /&gt;
&lt;br /&gt;
Click ‘'''Delete Selected element'''’&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Select the Contact in parallel with ‘switch’&lt;br /&gt;
&lt;br /&gt;
Click ‘Edit &amp;gt;&amp;gt; Delete Selected Rung’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Similarly, delete the contact in parallel to the first '''Contact''' and '''Coil''' parallel to the first coil.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click ‘Edit &amp;gt;&amp;gt; Insert Rung after’&lt;br /&gt;
&lt;br /&gt;
Highlight ‘Insert Rung Before’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, we’ll add a new '''rung'''.&lt;br /&gt;
&lt;br /&gt;
Click on '''‘Edit’.''' &lt;br /&gt;
&lt;br /&gt;
We can see options such as '''Insert Rung after''',''' Insert Rung Before'''.&lt;br /&gt;
&lt;br /&gt;
I’ll select''' Insert Rung after'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor on the new rung&lt;br /&gt;
&lt;br /&gt;
Click ‘instructions &amp;gt;&amp;gt; Insert Coil’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now insert a '''coil''' in the newly added '''rung''' 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;| Now, we’ll see how to change the default names of these instructions.&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 contact&lt;br /&gt;
&lt;br /&gt;
Change the name to ‘switch’&lt;br /&gt;
&lt;br /&gt;
Highlight the other options i.e ‘Input pin’ etc.&lt;br /&gt;
&lt;br /&gt;
Click OK&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on the '''contact.'''&lt;br /&gt;
&lt;br /&gt;
A dialog box opens.&lt;br /&gt;
&lt;br /&gt;
Change its name in the '''Name''' text box to ‘'''switch'''’.&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;| Double-click on the Coil&lt;br /&gt;
&lt;br /&gt;
Change the name to ‘LED1’&lt;br /&gt;
&lt;br /&gt;
Click OK&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Similarly, change the name of the '''Coil''' in first rung to '''LED1'''.&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 Coil&lt;br /&gt;
&lt;br /&gt;
Change the name to ‘LED2’&lt;br /&gt;
&lt;br /&gt;
Click OK&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Change the name of the '''Coil''' in second rung to '''LED2'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the ‘YLED1’ in I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The reflected names will appear in the '''I/O list'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Point to X and Y&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can notice an '''X''' prefixed before the name of the '''Contact''' and '''Y''' for '''Coil'''.&lt;br /&gt;
&lt;br /&gt;
The first letter is prefixed for some instructions by default.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click ‘Help’ &amp;gt;&amp;gt; Click ‘Manual’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us see the manual of LDmicro for prefixed naming convention.&lt;br /&gt;
&lt;br /&gt;
In the menu bar, click on '''Help''' and then '''Manual'''. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the prefixes list.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Scroll down.&lt;br /&gt;
&lt;br /&gt;
Under ‘'''BASICS'''’ we can find the list.&lt;br /&gt;
&lt;br /&gt;
These are the prefixes if we create a variable called '''‘name’.'''&lt;br /&gt;
&lt;br /&gt;
The prefixed letter indicates what kind of object it is.&lt;br /&gt;
&lt;br /&gt;
Close the manual.&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; Save’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us save the file.&lt;br /&gt;
&lt;br /&gt;
Click on '''File''' and then '''‘Save’'''.&lt;br /&gt;
&lt;br /&gt;
Save pop up window appears.&lt;br /&gt;
&lt;br /&gt;
The ladder logic files are saved with the extension '''.ld'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type sample.ld&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| I’ll save it as '''sample.ld''' in ‘'''LDmicro'''’ folder on the '''Desktop.''' &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 8:Summary&lt;br /&gt;
&lt;br /&gt;
* Explore LDmicro interface&lt;br /&gt;
* Create a simple ladder logic&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;
* Explore '''LDmicro''' interface&lt;br /&gt;
* Create a simple ladder logic &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;
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 10:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops and&lt;br /&gt;
* gives certificates on passing online tests.&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 11:&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;| * 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 12:&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 13:&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 14:&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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Installation-of-LDmicro-on-Windows/English</id>
		<title>OpenPLC-version1-with-LDmicro/C2/Installation-of-LDmicro-on-Windows/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Installation-of-LDmicro-on-Windows/English"/>
				<updated>2019-05-10T06:10:26Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: Created page with &amp;quot;'''Title of the script''':''' '''Installation of LDmicro on Windows  '''Author:''' Harsha Priyanka   '''Reviewer: '''Akshay Chipkar  '''Keywords:''' Ladder Logic, LDmicro, LDm...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Title of the script''':''' '''Installation of LDmicro on Windows&lt;br /&gt;
&lt;br /&gt;
'''Author:''' Harsha Priyanka &lt;br /&gt;
&lt;br /&gt;
'''Reviewer: '''Akshay Chipkar&lt;br /&gt;
&lt;br /&gt;
'''Keywords:''' Ladder Logic, LDmicro, LDmicro Installation, AVRDUDE installation, USBasp programmer drivers installation, Disable driver signature enforcement, Video tutorials&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;border-spacing:0;&amp;quot;&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &amp;lt;center&amp;gt;'''Visual Cue'''&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 1: &lt;br /&gt;
&lt;br /&gt;
Welcome slide&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Welcome to the spoken tutorial on '''Installation of LDmicro on Windows'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 2: &lt;br /&gt;
&lt;br /&gt;
Learning Objectives&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| In this tutorial, we will see how to install,&lt;br /&gt;
&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''AVRDUDE'''&lt;br /&gt;
* '''Drivers''' for '''USBasp programmer'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 3:&lt;br /&gt;
&lt;br /&gt;
System Requirements&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| To record this tutorial I am using:&lt;br /&gt;
&lt;br /&gt;
* Windows 8 operating system&lt;br /&gt;
* USBasp programmer&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 4a:&lt;br /&gt;
&lt;br /&gt;
What is LDmicro?&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| What is '''LDmicro'''?&lt;br /&gt;
&lt;br /&gt;
* '''LDmicro''' is an open source software.&lt;br /&gt;
* It is used to draw a '''ladder diagram '''or''' ladder logic''' to program PLCs.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 4b:&lt;br /&gt;
&lt;br /&gt;
What is LDmicro?&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| * We can simulate this '''ladder diagram '''or''' ladder logic''' in real time on our computer.&lt;br /&gt;
* It can also generate native code for certain '''PIC16''' and '''Atmel AVR microcontrollers'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now, we’ll see how to install '''LDmicro'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| OpenPLC website&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| To download the installation files, open a web browser of your choice.&lt;br /&gt;
&lt;br /&gt;
Make sure you have an active internet connection.&lt;br /&gt;
&lt;br /&gt;
Go to the website [https://openplc.fossee.in https://openplc.fossee.in]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| OpenPLC website&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| In the top menu bar, click on the '''Resources''' link.&lt;br /&gt;
&lt;br /&gt;
Click on '''User Downloads''' link present under the '''Downloads '''tab'''.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| OpenPLC website&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;lt;point to various links&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Here we will find link to download '''LDmicro''' installation files for '''Windows'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click LDmicro for Windows&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on '''LDmicro for Windows '''link.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Point .exe file&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| In the '''Downloads '''folder, the downloaded .exe file is available.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on the .exe file&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Double-click on the '''.exe''' file&lt;br /&gt;
&lt;br /&gt;
We will get a warning message as:&lt;br /&gt;
&lt;br /&gt;
'''‘Windows SmartScreen prevented an unrecognized app from starting’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click ‘More info’ &amp;gt;&amp;gt; Click ‘Run anyway’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on '''‘More info’.'''&lt;br /&gt;
&lt;br /&gt;
Then, click on '''‘Run anyway’ '''button'''.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| This will open the '''LDmicro-Program Editor window.'''&lt;br /&gt;
&lt;br /&gt;
Thus, we’ve successfully installed '''LDmicro'''.&lt;br /&gt;
&lt;br /&gt;
Close the window.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Next, we’ll see how to install '''AVRDUDE'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 5:&lt;br /&gt;
&lt;br /&gt;
What is AVRDUDE?&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| What is '''AVRDUDE'''?&lt;br /&gt;
&lt;br /&gt;
'''AVRDUDE '''stands for '''AVR Downloader Uploader'''.&lt;br /&gt;
&lt;br /&gt;
It is a tool for downloading or uploading the on-chip memories of AVR microcontrollers.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now we will see the installation of '''AVRDUDE'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Switch back to the browser&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Point Windows row&lt;br /&gt;
&lt;br /&gt;
Point ‘WinAVR (avrdude)’ link&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| In the '''User Downloads''' page, in''' Windows''' row, click on '''WinAVR (avrdude).'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click WinAVR (avrdude)&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| It will redirect to '''sourceforge.net''' website. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on ‘Files’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on the ‘'''Files'''’ tab.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click ‘WinAVR’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on ‘'''WinAVR'''’ folder.&lt;br /&gt;
&lt;br /&gt;
We can see a list of folders for different versions of '''AVRDUDE'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click ‘20100110’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on the first folder available in the list, which indicates the latest version.&lt;br /&gt;
&lt;br /&gt;
In my case, it is ‘'''20100110'''‘. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click WinAVR-20100110-install.exe&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Then, click on '''WinAVR-20100110-install.exe.'''&lt;br /&gt;
&lt;br /&gt;
This will download the executable file for '''AVRDUDE.'''&lt;br /&gt;
&lt;br /&gt;
It will take some time to download the file.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Point .exe file&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| In the '''Downloads''' folder, the downloaded .exe file is available&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Right click on the .exe file &lt;br /&gt;
&lt;br /&gt;
Click on ‘Run as administrator’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Right click on it and select ‘'''Run as Administrator'''’&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click ‘Yes’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| A window will pop-up asking permission to install.&lt;br /&gt;
&lt;br /&gt;
Click on ‘'''Yes'''’ button&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Select ‘English’ &amp;gt;&amp;gt; Click ‘OK’ &amp;gt;&amp;gt; Click ‘Next’ &amp;gt;&amp;gt; Click ‘I Agree’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Then another window pops up asking to select a language.&lt;br /&gt;
&lt;br /&gt;
Select '''English''' and then click ‘'''OK'''’ button.&lt;br /&gt;
&lt;br /&gt;
Click ‘'''Next'''’ in the Setup Wizard window.&lt;br /&gt;
&lt;br /&gt;
Click ‘'''I agree'''’ in the License Agreement window.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Browse the location&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Browse to the location where you would want to install the software.&lt;br /&gt;
&lt;br /&gt;
I’ll install it on '''Desktop'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click ‘Next’ &amp;gt;&amp;gt; Click ‘Install’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on ‘'''Next'''’ button.&lt;br /&gt;
&lt;br /&gt;
Click on ‘'''Install'''’ button.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click ‘Finish’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| It will take some time to install the software&lt;br /&gt;
&lt;br /&gt;
After completion, click on ‘'''Finish'''’ button.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Open Windows search&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| To make sure it is installed, open '''command prompt''' using Windows search.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Type ‘avrdude'''’'''&lt;br /&gt;
&lt;br /&gt;
Point the version number&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Type ‘'''avrdude'''’ and press '''ENTER.'''&lt;br /&gt;
&lt;br /&gt;
We can see the version of''' AVRDUDE''' installed on the machine.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Next, we will see about '''USBasp programmer'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 6:&lt;br /&gt;
&lt;br /&gt;
(picture of USBasp programmer, '''USBasp_Programmer.jpg''')&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| This is a picture of a USBasp programmer&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 7:&lt;br /&gt;
&lt;br /&gt;
Why USBasp drivers?&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| * A '''USBasp''' programmer is used to program the controller on '''OpenPLC''' main board&lt;br /&gt;
* '''AVRDUDE''' will not recognize the '''USBasp''', if drivers are not installed.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now, we’ll see how to install the '''USBasp''' driver&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Switch back to the browser.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| I’m using '''Windows 8 OS''' to do the installation.&lt;br /&gt;
&lt;br /&gt;
The procedure is same for '''Windows 10 '''also'''.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| First, we need to download the installation files.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click ‘USBasp drivers’ link&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| In the Windows row, Click on ‘'''USBasp drivers'''’ link to download them.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Point the .zip file&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| In the '''Downloads''' folder, we can see a .zip file of '''USBasp''' drivers&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Right click &amp;gt;&amp;gt; Click ‘Extract All’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Right click on it and select ‘'''Extract All'''’.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click ‘Extract’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Browse to the location where you want to extract and click ‘'''Extract'''’.&lt;br /&gt;
&lt;br /&gt;
I’ll extract to the '''Downloads''' folder.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Connect '''USBasp '''programmer to one of the USB ports of your PC.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Open Windows search&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now, open Windows search.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Type ‘Device Manager’ &lt;br /&gt;
&lt;br /&gt;
Press ENTER&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Search for ‘'''Device Manager'''’.&lt;br /&gt;
&lt;br /&gt;
In Windows 8, we can find '''‘Device Manager’''' under '''Settings '''&lt;br /&gt;
&lt;br /&gt;
Click on '''Device Manager.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click ‘Other Devices’&lt;br /&gt;
&lt;br /&gt;
Point ‘USBasp’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on ‘'''Other devices'''’.&lt;br /&gt;
&lt;br /&gt;
We can see ‘'''USBasp'''’.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Point yellow sign&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| The yellow sign near '''USBasp''' indicates that it’s not connected.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Right click on ‘USBasp’ &amp;gt;&amp;gt; Click ‘Update Driver Software’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Right click on it and select ‘'''Update Driver Software'''’.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| A window will pop up with ‘'''How do you want to search for driver software?'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click ‘Browse my computer for driver software’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click ‘'''Browse my computer for driver software'''’&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Browse to the location&lt;br /&gt;
&lt;br /&gt;
Click ‘Install’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Browse to the location where you have extracted the ‘'''USBasp drivers'''’ folder.&lt;br /&gt;
&lt;br /&gt;
I’ll change to '''Downloads.'''&lt;br /&gt;
&lt;br /&gt;
Click on '''Next''' button.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Point the message&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| But, we can see a message as:&lt;br /&gt;
&lt;br /&gt;
‘'''Windows encountered a problem installing the driver software for your device’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| This is because there is driver restriction for non-digitally signed drivers.&lt;br /&gt;
&lt;br /&gt;
Only digitally signed drivers are allowed in '''Windows 8''' and '''Windows 10'''&lt;br /&gt;
&lt;br /&gt;
Therefore we have to disable the signature checking.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Press SHIFT and Restart &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| To do that, hold the '''shift''' key and '''restart''' the computer.&lt;br /&gt;
&lt;br /&gt;
The computer will restart with some clicking options on the screen.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click ‘troubleshoot’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click on ‘'''Troubleshoot'''’ option.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click ‘Advanced Options’&lt;br /&gt;
&lt;br /&gt;
Click ‘Startup Settings’&lt;br /&gt;
&lt;br /&gt;
Text box&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Then click on ‘'''Advanced Options'''’.&lt;br /&gt;
&lt;br /&gt;
Click on ‘'''Startup Settings'''’.&lt;br /&gt;
&lt;br /&gt;
On Windows 10, it might be on a second page, after &amp;quot;'''Show more settings'''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Highlight the options&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| A new window opens with the message:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
‘'''after restart you will be able to change some windows options'''’.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click ‘Restart’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now simply click on the '''Restart''' button.&lt;br /&gt;
&lt;br /&gt;
When the computer reboots it will show some options on the screen.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Press 7&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Press 7 in the keyboard to select option 7, i.e ‘'''Disable driver signature enforcement'''’.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| After that, the computer will start windows normally but now with''' '''disabled driver signature detection.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now again go to ‘'''Device manager'''’ and try installing the driver as before&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We’ll get a warning that says ‘'''Windows can’t verify the publisher of this driver software’'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Click ‘Install this driver software anyway’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Ignore it, and click on ‘'''Install this driver software anyway'''’&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| We can see a message ‘'''Windows has successfully updated your driver software’.'''&lt;br /&gt;
&lt;br /&gt;
Click on the '''close''' button.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Point ‘USBasp’ in ‘Other devices’&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Now we can observe that the yellow sign at '''USBasp''' is not there.&lt;br /&gt;
&lt;br /&gt;
Thus, '''USBasp''' drivers are successfully installed and working&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 8:&lt;br /&gt;
&lt;br /&gt;
Summary&lt;br /&gt;
&lt;br /&gt;
* How to install LDmicro&lt;br /&gt;
* How to install AVRDUDE&lt;br /&gt;
* How to install drivers for USBasp programmer&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| In this tutorial, we learnt How to install&lt;br /&gt;
&lt;br /&gt;
* LDmicro&lt;br /&gt;
* AVRDUDE&lt;br /&gt;
* drivers for USBasp programmer&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 9:&lt;br /&gt;
&lt;br /&gt;
About Spoken Tutorial project&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| * The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
* Please download and watch it&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 10:&lt;br /&gt;
&lt;br /&gt;
Spoken Tutorial workshops&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| The''' Spoken Tutorial Project''' team:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 11:&lt;br /&gt;
&lt;br /&gt;
Forum for specific questions:&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Do you have questions in THIS Spoken Tutorial?&lt;br /&gt;
&lt;br /&gt;
* Please visit this site&lt;br /&gt;
* Choose the minute and second where you have the question&lt;br /&gt;
* Explain your question briefly&lt;br /&gt;
* Someone from our team will answer them&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 12:&lt;br /&gt;
&lt;br /&gt;
Forum for specific questions:&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 13:&lt;br /&gt;
&lt;br /&gt;
Acknowledgment&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Spoken Tutorial Project is funded by NMEICT, MHRD, Government of India.&lt;br /&gt;
&lt;br /&gt;
More information on this mission is available at&lt;br /&gt;
&lt;br /&gt;
this link.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;padding:0.176cm;&amp;quot;| Slide 14:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Thank you slide&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:1pt solid #000001;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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Installation-of-LDmicro-on-Linux/English</id>
		<title>OpenPLC-version1-with-LDmicro/C2/Installation-of-LDmicro-on-Linux/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Installation-of-LDmicro-on-Linux/English"/>
				<updated>2019-04-25T07:55:03Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&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;
&lt;br /&gt;
Welcome slide&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Welcome to the spoken tutorial on''' Installation of LDmicro on Linux.'''&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;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will see how to install,&lt;br /&gt;
&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''AVRDUDE'''&lt;br /&gt;
* '''Drivers''' for '''USBasp programmer'''&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;
| 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''' '''16.04 operating system&lt;br /&gt;
* USBasp programmer&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 4a:&lt;br /&gt;
&lt;br /&gt;
What is LDmicro?&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| What is '''LDmicro'''?&lt;br /&gt;
&lt;br /&gt;
* '''LDmicro''' is an open source software.&lt;br /&gt;
* It is used to draw a '''ladder diagram '''or''' ladder logic''' to program PLCs.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 4b:&lt;br /&gt;
&lt;br /&gt;
What is LDmicro?&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;|&lt;br /&gt;
* We can simulate this '''ladder diagram '''or''' ladder logic''' in real time on our computer.&lt;br /&gt;
* It can also generate native code for certain '''PIC16''' and '''Atmel AVR microcontrollers'''.&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 how to install '''LDmicro'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| OpenPLC website&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To download the installation files, open the web browser of your choice.&lt;br /&gt;
&lt;br /&gt;
Make sure you’ve an active internet connection.&lt;br /&gt;
&lt;br /&gt;
Go to the website [https://openplc.fossee.in/ https://openplc.fossee.in]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| OpenPLC website&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In the top menu bar, click on the '''Resources''' link.&lt;br /&gt;
&lt;br /&gt;
Click on '''User Downloads '''link present under the '''Downloads '''tab'''.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| OpenPLC website&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;lt;point to various links&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Here we will find links to download '''LDmicro''' installation files for different versions of '''Ubuntu Linux'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| OpenPLC website&lt;br /&gt;
&lt;br /&gt;
Click LDmicro for Linux(deb)''' '''&amp;gt;&amp;gt; Click Save File''' '''&amp;gt;&amp;gt; Click OK&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on appropriate link depending upon your operating system’s version.&lt;br /&gt;
&lt;br /&gt;
I will click on '''LDmicro for Ubuntu 16.04(deb) '''link .&lt;br /&gt;
&lt;br /&gt;
A dialog box opens.&lt;br /&gt;
&lt;br /&gt;
Click on '''Save File, '''and then click '''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 .deb file in the downloads folder&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In the '''Downloads '''folder, the downloaded '''.deb '''file is available.&lt;br /&gt;
&lt;br /&gt;
Note that, the extension for the downloaded file for '''Linux''' will be ('''.deb''').&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open the terminal.&lt;br /&gt;
&lt;br /&gt;
Press CTRL+ALT+T&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now let us open the '''Terminal '''by pressing '''CTRL +ALT + T''' keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Terminal&lt;br /&gt;
&lt;br /&gt;
Type &amp;gt;&amp;gt; cd Downloads&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Go to the '''Downloads '''folder''' '''by typing '''&amp;lt;nowiki&amp;gt;cd &amp;lt;space&amp;gt; Downloads &amp;lt;/nowiki&amp;gt;'''and press ‘'''Enter'''’.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Terminal &lt;br /&gt;
&lt;br /&gt;
Type &amp;gt;&amp;gt; ls&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type '''ls '''to see the LDmicro package name&lt;br /&gt;
&lt;br /&gt;
Press''' Enter'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the LDmicro version&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Here, in my system, it shows '''LDMicro-2.2.4-Linux.deb '''&lt;br /&gt;
&lt;br /&gt;
The name may vary in future.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type &lt;br /&gt;
&lt;br /&gt;
&amp;gt;&amp;gt; '''sudo dpkg -i LDMicro-2.2.4-Linux.deb'''&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To do the installation, type the command '''sudo dpkg -i LDMicro-2.2.4-Linux.deb '''and press '''Enter'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &amp;lt;nowiki&amp;gt;Type &amp;gt;&amp;gt; &amp;lt;&amp;lt;/nowiki&amp;gt;''password''&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type the admin password if prompted and press '''Enter'''.&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, '''LDmicro''' software is installed.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type &amp;gt;&amp;gt; '''ldmicro''' &lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To make sure, type '''LDMicro '''in the terminal and press '''Enter.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''LDmicro '''interface &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''LDMicro''' interface opens. &lt;br /&gt;
&lt;br /&gt;
This ensures that '''LDmicro''' is installed successfully.&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’ll see how to install '''AVRDUDE'''.&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;
What is AVRDUDE?&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| What is '''AVRDUDE'''?&lt;br /&gt;
&lt;br /&gt;
*'''AVRDUDE '''stands for '''AVR Downloader Uploader'''.&lt;br /&gt;
&lt;br /&gt;
*It is a tool for downloading or uploading the on-chip memories of AVR microcontrollers.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch back to terminal&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To install '''AVRDUDE''', switch back to terminal.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type sudo apt-get install avrdude&lt;br /&gt;
&lt;br /&gt;
Type y&lt;br /&gt;
&lt;br /&gt;
Press ENTER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type, '''&amp;lt;nowiki&amp;gt;sudo apt &amp;lt;hyphen&amp;gt; get install avrdude&amp;lt;/nowiki&amp;gt;''' and press '''ENTER'''.&lt;br /&gt;
&lt;br /&gt;
It will ask for your permission to continue the installation.&lt;br /&gt;
&lt;br /&gt;
Type ‘y’ and press '''Enter'''.&lt;br /&gt;
&lt;br /&gt;
Wait until the installation is completed.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type avrdude&lt;br /&gt;
&lt;br /&gt;
Highlight the version&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To check the installed version, type '''avrdude '''and press '''ENTER'''.&lt;br /&gt;
&lt;br /&gt;
Here, you can find version number at the bottom of the terminal.&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 about '''USBasp programmer'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 6:&lt;br /&gt;
&lt;br /&gt;
(picture of USBasp programmer, '''USBasp_Programmer.jpg''')&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This is a picture of a USBasp programmer&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 7:&lt;br /&gt;
&lt;br /&gt;
Why USBasp drivers?&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Why USBasp drivers?&lt;br /&gt;
&lt;br /&gt;
* A '''USBasp programmer''' is used to program the controller on '''OpenPLC''' main board.&lt;br /&gt;
* '''AVRDUDE''' will not recognize the '''USBasp''', if drivers are not installed.&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 how to install '''USBasp''' drivers.&lt;br /&gt;
&lt;br /&gt;
In Linux OS, the '''USBasp''' drivers are pre-installed.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch to the terminal&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch back to the terminal.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Terminal&lt;br /&gt;
&lt;br /&gt;
Type &amp;gt;&amp;gt;lsusb&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type''' lsusb '''and press '''Enter'''.&lt;br /&gt;
&lt;br /&gt;
This will give the information about '''USB buses''' in the system and the devices connected to them. &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;| The information you get on the terminal may not be same as mine.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect USBasp to an USB port of Computer&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, connect a '''USBasp programmer''' to one of the USB ports of your computer.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Terminal&lt;br /&gt;
&lt;br /&gt;
Type &amp;gt;&amp;gt; '''‘'''lsusb’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now again, in the terminal type '''‘lsusb’''' and press '''Enter.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Terminal&lt;br /&gt;
&lt;br /&gt;
(Highlight to that extra line, in particular the word libusb)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe there is an extra line of information of the bus and the device connected to it.&lt;br /&gt;
&lt;br /&gt;
We can find a keyword '''libusb '''in the new line which indicates that '''USBasp programmer''' is connected. &lt;br /&gt;
&lt;br /&gt;
This indicates that the drivers are installed successfully.&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 8:&lt;br /&gt;
&lt;br /&gt;
Summary&lt;br /&gt;
&lt;br /&gt;
In this tutorial, we learnt to install&lt;br /&gt;
&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''AVRDUDE'''&lt;br /&gt;
* Drivers for '''USBasp''' programmer&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
&lt;br /&gt;
In this tutorial, we learnt to install&lt;br /&gt;
&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''AVRDUDE '''and&lt;br /&gt;
* Drivers for '''USBasp''' programmer&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;
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 summarizes 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 10:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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 11:&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 questions in THIS Spoken Tutorial?&lt;br /&gt;
&lt;br /&gt;
* Please visit this site&lt;br /&gt;
* Choose the minute and second where you have the question&lt;br /&gt;
* Explain your question briefly&lt;br /&gt;
* Someone from our team will answer them&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;
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 13:&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 NMEICT, MHRD, Government of India.&lt;br /&gt;
&lt;br /&gt;
More information on this mission is available at&lt;br /&gt;
&lt;br /&gt;
this link.&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;
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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Installation-of-LDmicro-on-Linux/English</id>
		<title>OpenPLC-version1-with-LDmicro/C2/Installation-of-LDmicro-on-Linux/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Installation-of-LDmicro-on-Linux/English"/>
				<updated>2019-04-25T07:54:10Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&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;
&lt;br /&gt;
Welcome slide&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Welcome to the spoken tutorial on''' Installation of LDmicro on Linux.'''&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;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will see how to install,&lt;br /&gt;
&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''AVRDUDE'''&lt;br /&gt;
* '''Drivers''' for '''USBasp programmer'''&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;
| 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''' '''16.04 operating system&lt;br /&gt;
* USBasp programmer&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 4a:&lt;br /&gt;
&lt;br /&gt;
What is LDmicro?&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| What is '''LDmicro'''?&lt;br /&gt;
&lt;br /&gt;
* '''LDmicro''' is an open source software.&lt;br /&gt;
* It is used to draw a '''ladder diagram '''or''' ladder logic''' to program PLCs.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 4b:&lt;br /&gt;
&lt;br /&gt;
What is LDmicro?&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;|&lt;br /&gt;
* We can simulate this '''ladder diagram '''or''' ladder logic''' in real time on our computer.&lt;br /&gt;
* It can also generate native code for certain '''PIC16''' and '''Atmel AVR microcontrollers'''.&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 how to install '''LDmicro'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| OpenPLC website&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To download the installation files, open the web browser of your choice.&lt;br /&gt;
&lt;br /&gt;
Make sure you’ve an active internet connection.&lt;br /&gt;
&lt;br /&gt;
Go to the website [https://openplc.fossee.in/ https://openplc.fossee.in]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| OpenPLC website&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In the top menu bar, click on the '''Resources''' link.&lt;br /&gt;
&lt;br /&gt;
Click on '''User Downloads '''link present under the '''Downloads '''tab'''.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| OpenPLC website&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;lt;point to various links&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Here we will find links to download '''LDmicro''' installation files for different versions of '''Ubuntu Linux'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| OpenPLC website&lt;br /&gt;
&lt;br /&gt;
Click LDmicro for Linux(deb)''' '''&amp;gt;&amp;gt; Click Save File''' '''&amp;gt;&amp;gt; Click OK&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on appropriate link depending upon your operating system’s version.&lt;br /&gt;
&lt;br /&gt;
I will click on '''LDmicro for Ubuntu 16.04(deb) '''link .&lt;br /&gt;
&lt;br /&gt;
A dialog box opens.&lt;br /&gt;
&lt;br /&gt;
Click on '''Save File, '''and then click '''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 .deb file in the downloads folder&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In the '''Downloads '''folder, the downloaded '''.deb '''file is available.&lt;br /&gt;
&lt;br /&gt;
Note that, the extension for the downloaded file for '''Linux''' will be ('''.deb''').&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open the terminal.&lt;br /&gt;
&lt;br /&gt;
Press CTRL+ALT+T&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now let us open the '''Terminal '''by pressing '''CTRL +ALT + T''' keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Terminal&lt;br /&gt;
&lt;br /&gt;
Type &amp;gt;&amp;gt; cd Downloads&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Go to the '''Downloads '''folder''' '''by typing '''&amp;lt;nowiki&amp;gt;cd &amp;lt;space&amp;gt; Downloads &amp;lt;/nowiki&amp;gt;'''and press ‘'''Enter'''’.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Terminal &lt;br /&gt;
&lt;br /&gt;
Type &amp;gt;&amp;gt; ls&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type '''ls '''to see the LDmicro package name&lt;br /&gt;
&lt;br /&gt;
Press''' Enter'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the LDmicro version&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Here, in my system, it shows '''LDMicro-2.2.4-Linux.deb '''&lt;br /&gt;
&lt;br /&gt;
The name may vary in future.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type &lt;br /&gt;
&lt;br /&gt;
&amp;gt;&amp;gt; '''sudo dpkg -i LDMicro-2.2.4-Linux.deb'''&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To do the installation, type the command '''sudo dpkg -i LDMicro-2.2.4-Linux.deb '''and press '''Enter'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &amp;lt;nowiki&amp;gt;Type &amp;gt;&amp;gt; &amp;lt;&amp;lt;/nowiki&amp;gt;''password''&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type the admin password if prompted and press '''Enter'''.&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, '''LDmicro''' software is installed.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type &amp;gt;&amp;gt; '''ldmicro''' &lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To make sure, type '''LDMicro '''in the terminal and press '''Enter.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''LDmicro '''interface &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''LDMicro''' interface opens. &lt;br /&gt;
&lt;br /&gt;
This ensures that '''LDmicro''' is installed successfully.&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’ll see how to install '''AVRDUDE'''.&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;
What is AVRDUDE?&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| What is '''AVRDUDE'''?&lt;br /&gt;
&lt;br /&gt;
'''AVRDUDE '''stands for '''AVR Downloader Uploader'''.&lt;br /&gt;
&lt;br /&gt;
It is a tool for downloading or uploading the on-chip memories of AVR microcontrollers.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch back to terminal&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To install '''AVRDUDE''', switch back to terminal.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type sudo apt-get install avrdude&lt;br /&gt;
&lt;br /&gt;
Type y&lt;br /&gt;
&lt;br /&gt;
Press ENTER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type, '''&amp;lt;nowiki&amp;gt;sudo apt &amp;lt;hyphen&amp;gt; get install avrdude&amp;lt;/nowiki&amp;gt;''' and press '''ENTER'''.&lt;br /&gt;
&lt;br /&gt;
It will ask for your permission to continue the installation.&lt;br /&gt;
&lt;br /&gt;
Type ‘y’ and press '''Enter'''.&lt;br /&gt;
&lt;br /&gt;
Wait until the installation is completed.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type avrdude&lt;br /&gt;
&lt;br /&gt;
Highlight the version&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To check the installed version, type '''avrdude '''and press '''ENTER'''.&lt;br /&gt;
&lt;br /&gt;
Here, you can find version number at the bottom of the terminal.&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 about '''USBasp programmer'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 6:&lt;br /&gt;
&lt;br /&gt;
(picture of USBasp programmer, '''USBasp_Programmer.jpg''')&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This is a picture of a USBasp programmer&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 7:&lt;br /&gt;
&lt;br /&gt;
Why USBasp drivers?&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Why USBasp drivers?&lt;br /&gt;
&lt;br /&gt;
* A '''USBasp programmer''' is used to program the controller on '''OpenPLC''' main board.&lt;br /&gt;
* '''AVRDUDE''' will not recognize the '''USBasp''', if drivers are not installed.&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 how to install '''USBasp''' drivers.&lt;br /&gt;
&lt;br /&gt;
In Linux OS, the '''USBasp''' drivers are pre-installed.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch to the terminal&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch back to the terminal.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Terminal&lt;br /&gt;
&lt;br /&gt;
Type &amp;gt;&amp;gt;lsusb&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type''' lsusb '''and press '''Enter'''.&lt;br /&gt;
&lt;br /&gt;
This will give the information about '''USB buses''' in the system and the devices connected to them. &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;| The information you get on the terminal may not be same as mine.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect USBasp to an USB port of Computer&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, connect a '''USBasp programmer''' to one of the USB ports of your computer.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Terminal&lt;br /&gt;
&lt;br /&gt;
Type &amp;gt;&amp;gt; '''‘'''lsusb’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now again, in the terminal type '''‘lsusb’''' and press '''Enter.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Terminal&lt;br /&gt;
&lt;br /&gt;
(Highlight to that extra line, in particular the word libusb)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe there is an extra line of information of the bus and the device connected to it.&lt;br /&gt;
&lt;br /&gt;
We can find a keyword '''libusb '''in the new line which indicates that '''USBasp programmer''' is connected. &lt;br /&gt;
&lt;br /&gt;
This indicates that the drivers are installed successfully.&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 8:&lt;br /&gt;
&lt;br /&gt;
Summary&lt;br /&gt;
&lt;br /&gt;
In this tutorial, we learnt to install&lt;br /&gt;
&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''AVRDUDE'''&lt;br /&gt;
* Drivers for '''USBasp''' programmer&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
&lt;br /&gt;
In this tutorial, we learnt to install&lt;br /&gt;
&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''AVRDUDE '''and&lt;br /&gt;
* Drivers for '''USBasp''' programmer&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;
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 summarizes 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 10:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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 11:&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 questions in THIS Spoken Tutorial?&lt;br /&gt;
&lt;br /&gt;
* Please visit this site&lt;br /&gt;
* Choose the minute and second where you have the question&lt;br /&gt;
* Explain your question briefly&lt;br /&gt;
* Someone from our team will answer them&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;
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 13:&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 NMEICT, MHRD, Government of India.&lt;br /&gt;
&lt;br /&gt;
More information on this mission is available at&lt;br /&gt;
&lt;br /&gt;
this link.&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;
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>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Installation-of-LDmicro-on-Linux/English</id>
		<title>OpenPLC-version1-with-LDmicro/C2/Installation-of-LDmicro-on-Linux/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenPLC-version1-with-LDmicro/C2/Installation-of-LDmicro-on-Linux/English"/>
				<updated>2019-04-25T07:44:20Z</updated>
		
		<summary type="html">&lt;p&gt;Priyanka.guntaka123: 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;'''Visual Cue'''&amp;lt;/center&amp;gt; | style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &amp;lt;cente...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&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;
&lt;br /&gt;
Welcome slide&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Welcome to the spoken tutorial on''' Installation of LDmicro on Linux.'''&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;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will see how to install,&lt;br /&gt;
&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''AVRDUDE'''&lt;br /&gt;
* '''Drivers''' for '''USBasp programmer'''&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;
| 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''' '''16.04 operating system&lt;br /&gt;
* USBasp programmer&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 4a:&lt;br /&gt;
&lt;br /&gt;
What is LDmicro?&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| What is '''LDmicro'''?&lt;br /&gt;
&lt;br /&gt;
* '''LDmicro''' is an open source software.&lt;br /&gt;
* It is used to draw a '''ladder diagram '''or''' ladder logic''' to program PLCs.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 4b:&lt;br /&gt;
&lt;br /&gt;
What is LDmicro?&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| * We can simulate this '''ladder diagram '''or''' ladder logic''' in real time on our computer.&lt;br /&gt;
* It can also generate native code for certain '''PIC16''' and '''Atmel AVR microcontrollers'''.&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 how to install '''LDmicro'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| OpenPLC website&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To download the installation files, open the web browser of your choice.&lt;br /&gt;
&lt;br /&gt;
Make sure you’ve an active internet connection.&lt;br /&gt;
&lt;br /&gt;
Go to the website [https://openplc.fossee.in/ https://openplc.fossee.in]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| OpenPLC website&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In the top menu bar, click on the '''Resources''' link.&lt;br /&gt;
&lt;br /&gt;
Click on '''User Downloads '''link present under the '''Downloads '''tab'''.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| OpenPLC website&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;lt;point to various links&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Here we will find links to download '''LDmicro''' installation files for different versions of '''Ubuntu Linux'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| OpenPLC website&lt;br /&gt;
&lt;br /&gt;
Click LDmicro for Linux(deb)''' '''&amp;gt;&amp;gt; Click Save File''' '''&amp;gt;&amp;gt; Click OK&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on appropriate link depending upon your operating system’s version.&lt;br /&gt;
&lt;br /&gt;
I will click on '''LDmicro for Ubuntu 16.04(deb) '''link .&lt;br /&gt;
&lt;br /&gt;
A dialog box opens.&lt;br /&gt;
&lt;br /&gt;
Click on '''Save File, '''and then click '''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 .deb file in the downloads folder&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In the '''Downloads '''folder, the downloaded '''.deb '''file is available.&lt;br /&gt;
&lt;br /&gt;
Note that, the extension for the downloaded file for '''Linux''' will be ('''.deb''').&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open the terminal.&lt;br /&gt;
&lt;br /&gt;
Press CTRL+ALT+T&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now let us open the '''Terminal '''by pressing&lt;br /&gt;
&lt;br /&gt;
'''CTRL +ALT + T''' keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Terminal&lt;br /&gt;
&lt;br /&gt;
Type &amp;gt;&amp;gt; cd Downloads&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Go to the '''Downloads '''folder''' '''by typing '''&amp;lt;nowiki&amp;gt;cd &amp;lt;space&amp;gt;Downloads &amp;lt;/nowiki&amp;gt;'''and press ‘'''Enter'''’.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Terminal &lt;br /&gt;
&lt;br /&gt;
Type &amp;gt;&amp;gt; ls&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type '''ls '''to see the LDmicro package name&lt;br /&gt;
&lt;br /&gt;
Press''' Enter'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the LDmicro version&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Here, in my system, it shows '''LDMicro-2.2.4-Linux.deb '''&lt;br /&gt;
&lt;br /&gt;
The name may vary in future.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type &lt;br /&gt;
&lt;br /&gt;
&amp;gt;&amp;gt; '''sudo dpkg -i LDMicro-2.2.4-Linux.deb'''&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To do the installation, type the command '''sudo dpkg -i LDMicro-2.2.4-Linux.deb '''and press '''Enter'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &amp;lt;nowiki&amp;gt;Type &amp;gt;&amp;gt; &amp;lt;&amp;lt;/nowiki&amp;gt;''password''&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type the admin password if prompted and press '''Enter'''.&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''', LDmicro''' software is installed.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type &amp;gt;&amp;gt; '''ldmicro''' &lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To make sure, type '''LDMicro '''in the terminal and press '''Enter.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''LDmicro '''interface &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| '''LDMicro''' interface opens. &lt;br /&gt;
&lt;br /&gt;
This ensures that '''LDmicro''' is installed successfully.&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’ll see how to install '''AVRDUDE'''.&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;
What is AVRDUDE?&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| What is '''AVRDUDE'''?&lt;br /&gt;
&lt;br /&gt;
'''AVRDUDE '''stands for '''AVR Downloader Uploader'''.&lt;br /&gt;
&lt;br /&gt;
It is a tool for downloading or uploading the on-chip memories of AVR microcontrollers.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch back to terminal&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To install '''AVRDUDE''', switch back to terminal.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type, sudo apt-get install avrdude&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type, '''&amp;lt;nowiki&amp;gt;sudo apt &amp;lt;hyphen&amp;gt; get install avrdude&amp;lt;/nowiki&amp;gt;''' and press '''ENTER'''.&lt;br /&gt;
&lt;br /&gt;
It will ask for your permission to continue the installation.&lt;br /&gt;
&lt;br /&gt;
Type ‘y’ and press '''Enter'''.&lt;br /&gt;
&lt;br /&gt;
Wait until the installation is completed.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type avrdude&lt;br /&gt;
&lt;br /&gt;
Highlight the version&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To check the installed version, type '''avrdude '''and press '''ENTER'''.&lt;br /&gt;
&lt;br /&gt;
Here, you can find version number at the bottom of the terminal.&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 about '''USBasp programmer'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 6:&lt;br /&gt;
&lt;br /&gt;
(picture of USBasp programmer, '''USBasp_Programmer.jpg''')&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This is a picture of a USBasp programmer&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 7:&lt;br /&gt;
&lt;br /&gt;
Why USBasp drivers?&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Why USBasp drivers?&lt;br /&gt;
&lt;br /&gt;
* A '''USBasp programmer''' is used to program the controller on '''OpenPLC''' main board.&lt;br /&gt;
* '''AVRDUDE''' will not recognize the '''USBasp''', if drivers are not installed.&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 how to install '''USBasp''' drivers.&lt;br /&gt;
&lt;br /&gt;
In Linux OS, the '''USBasp''' drivers are pre-installed.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch to the terminal&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Switch back to the terminal.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Terminal&lt;br /&gt;
&lt;br /&gt;
Type &amp;gt;&amp;gt;lsusb&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type''' lsusb '''and press '''Enter'''.&lt;br /&gt;
&lt;br /&gt;
This will give the information about '''USB buses''' in the system and the devices connected to them. &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;| The information you get on the terminal may not be same as mine.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect USBasp to an USB port of Computer&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, connect a '''USBasp programmer''' to one of the USB ports of your computer.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Terminal&lt;br /&gt;
&lt;br /&gt;
Type &amp;gt;&amp;gt; '''‘'''lsusb’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now again, in the terminal type '''‘lsusb’''' and press '''Enter.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Terminal&lt;br /&gt;
&lt;br /&gt;
(Highlight to that extra line, in particular the word libusb)&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe there is an extra line of information of the bus and the device connected to it.&lt;br /&gt;
&lt;br /&gt;
We can find a keyword '''libusb '''in the new line which indicates that '''USBasp programmer''' is connected. &lt;br /&gt;
&lt;br /&gt;
This indicates that the drivers are installed successfully.&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 8:&lt;br /&gt;
&lt;br /&gt;
Summary&lt;br /&gt;
&lt;br /&gt;
In this tutorial, we learnt to install&lt;br /&gt;
&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''AVRDUDE'''&lt;br /&gt;
* Drivers for '''USBasp''' programmer&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
&lt;br /&gt;
In this tutorial, we learnt to install&lt;br /&gt;
&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''AVRDUDE '''and&lt;br /&gt;
* Drivers for '''USBasp''' programmer&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;
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 summarizes 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 10:&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:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&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 11:&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 questions in THIS Spoken Tutorial?&lt;br /&gt;
&lt;br /&gt;
* Please visit this site&lt;br /&gt;
* Choose the minute and second where you have the question&lt;br /&gt;
* Explain your question briefly&lt;br /&gt;
* Someone from our team will answer them&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;
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 13:&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 NMEICT, MHRD, Government of India.&lt;br /&gt;
&lt;br /&gt;
More information on this mission is available at&lt;br /&gt;
&lt;br /&gt;
this link.&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;
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>