simulacija plc kontolera pomoću pic16f877 mikrokontrolera

47
Simulacija PLC kontolera pomoću Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera PIC16F877 mikrokontrolera Aleksandar Gošić 11486 Aleksandar Gošić 11486 Aleksandar Lakićević 11523 Aleksandar Lakićević 11523

Upload: brian

Post on 13-Feb-2016

110 views

Category:

Documents


6 download

DESCRIPTION

Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera Aleksandar Gošić 11486 Aleksandar Lakićević 11523. UVOD. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Simulacija PLC kontolera pomoću Simulacija PLC kontolera pomoću PIC16F877 mikrokontroleraPIC16F877 mikrokontrolera

Aleksandar Gošić 11486Aleksandar Gošić 11486 Aleksandar Lakićević 11523Aleksandar Lakićević 11523

Page 2: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Smisao ovog zadatka je da se pomoću Smisao ovog zadatka je da se pomoću PIC16F877 mikrokontrolera simulira rad PIC16F877 mikrokontrolera simulira rad programabilnog logičkog kontrolera (PLC). Za programabilnog logičkog kontrolera (PLC). Za pisanje koda koristili smo kompajler pisanje koda koristili smo kompajler mikroCmikroC, a za , a za upis koda u mikrokontroler koristili smo upis koda u mikrokontroler koristili smo mikroBootloadermikroBootloader, produkte firme , produkte firme MikroElektronikaMikroElektronika iz Beograda. iz Beograda.

UVODUVOD

Page 3: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

PLC - industrijski računar čiji su hardver i softver posebno PLC - industrijski računar čiji su hardver i softver posebno prilagođeni radu u industrijskim uslovima, a koji se može prilagođeni radu u industrijskim uslovima, a koji se može lako programirati i ugrađivati u nove i postojeće industrijske lako programirati i ugrađivati u nove i postojeće industrijske sisteme. sisteme.

PLC - digitalni elektronski uređaj koji poseduje PLC - digitalni elektronski uređaj koji poseduje programabilnu memoriju za smeštanje instrukcija kojima se programabilnu memoriju za smeštanje instrukcija kojima se realizuju specifične funkcije, kao što su logičko realizuju specifične funkcije, kao što su logičko sekvenciranje, tajming, brojanje i artimetičke operacije, a u sekvenciranje, tajming, brojanje i artimetičke operacije, a u cilju upravljanja različitim mašinama i procesima putem cilju upravljanja različitim mašinama i procesima putem digitalnih ili analognih ulazno/izlaznih moduladigitalnih ili analognih ulazno/izlaznih modula

PLCPLC

Page 4: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Na Na narednnarednimim slajd slajdovimaovima bi biććee, u obliku blok , u obliku blok dijagrama, prikazane četiri osnovne jedinice svakog PLC dijagrama, prikazane četiri osnovne jedinice svakog PLC sistema kao i načina na koji su medusobno povezane:sistema kao i načina na koji su medusobno povezane:

PLC sistemPLC sistem

Page 5: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

1.1. Centralna procesorksa jedinica (CPU)Centralna procesorksa jedinica (CPU) ili ili logička jedinicalogička jedinica

a. Mikroprocesor. a. Mikroprocesor. b. Memorija – za cuvanje sistemskog softvera i b. Memorija – za cuvanje sistemskog softvera i korisnickog programa korisnickog programa c. Izvor napajanja - obezbeduje napajanje c. Izvor napajanja - obezbeduje napajanje mikroprocesora, memorije, ulaznog i izlaznog modula.mikroprocesora, memorije, ulaznog i izlaznog modula.

PLC sistemPLC sistem

Page 6: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

2.2. Programator/Monitor (PM).Programator/Monitor (PM). 3.3. U/I moduli.U/I moduli. 4.4. Rekovi i šasije.Rekovi i šasije.

PLC sistem

PLC sistemPLC sistem

Page 7: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Kao što je već ranije istaknuto, PLC je početno Kao što je već ranije istaknuto, PLC je početno razvijen sa idejom da zameni relejne sisteme. To znači da se razvijen sa idejom da zameni relejne sisteme. To znači da se očekivalo da on realizuje odgovarajuću vremensku očekivalo da on realizuje odgovarajuću vremensku sekvencu logičkih operacija. Pored toga, uspešna primena sekvencu logičkih operacija. Pored toga, uspešna primena PLC-a u praksi, zahtevala je i da se njegovo programiranje PLC-a u praksi, zahtevala je i da se njegovo programiranje prilagodi tehnici koja je svim korisnicima relejnih sistema prilagodi tehnici koja je svim korisnicima relejnih sistema dobro poznata. Iz svih ovih razloga, za projektovanje PLC-dobro poznata. Iz svih ovih razloga, za projektovanje PLC-ova razvijen je programski jezik zasnovan na leder ova razvijen je programski jezik zasnovan na leder (lestvičastim) dijagramima – leder programski jezik. (lestvičastim) dijagramima – leder programski jezik.

Programiranje PLC-a. Ladder Programiranje PLC-a. Ladder dijagramidijagrami

Page 8: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Jedan prostiji primer ladder dijagrama je prikazan na Jedan prostiji primer ladder dijagrama je prikazan na sledećoj slici.sledećoj slici.

Primer ladder dijagramaPrimer ladder dijagrama

Programiranje PLC-a. Ladder Programiranje PLC-a. Ladder dijagramidijagrami

Page 9: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Kao što se vidi sa slike, ladder dijagram se sastoji od Kao što se vidi sa slike, ladder dijagram se sastoji od uslova funkcije sa leve strane i akcije sa desne strane. uslova funkcije sa leve strane i akcije sa desne strane. Osnovni tipovi uslova (bit naredbe za definiasanje uslova) Osnovni tipovi uslova (bit naredbe za definiasanje uslova) su normalno otvoren prekidač( ) i normalno zatvoren su normalno otvoren prekidač( ) i normalno zatvoren prekidač ( ). Pomoću njih je moguće realizovati sve prekidač ( ). Pomoću njih je moguće realizovati sve osnovne logičke funkcije o čemu će biti reči kasnije. Simbol osnovne logičke funkcije o čemu će biti reči kasnije. Simbol za akciju je ( ) i ona se izvršava ako je iskaz (uslov) na za akciju je ( ) i ona se izvršava ako je iskaz (uslov) na levoj strani dijagrama istinit.levoj strani dijagrama istinit.

Programiranje PLC-a. Ladder Programiranje PLC-a. Ladder dijagramidijagrami

Page 10: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Kao što smo već napomenuli zadatak ovog Kao što smo već napomenuli zadatak ovog projekta je bio da se pomoću mikrokontrolera projekta je bio da se pomoću mikrokontrolera simulira rad PLC-asimulira rad PLC-a, tako , tako što bi sa jedne strane bili što bi sa jedne strane bili prekidači povezani na ulaz kontrolera, a sa druge prekidači povezani na ulaz kontrolera, a sa druge strane na izlazu kontrolera LED diode za indikaciju strane na izlazu kontrolera LED diode za indikaciju stanja. Osnovne kombinacione funkcije su opisane u stanja. Osnovne kombinacione funkcije su opisane u softveru a njihovim pozivanjem realizuju se softveru a njihovim pozivanjem realizuju se kompletne složene funkicije.kompletne složene funkicije.

Projektni zadatakProjektni zadatak

Page 11: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Za realizaciju ovog simulatora upotrebljene su sledeće Za realizaciju ovog simulatora upotrebljene su sledeće komponente: komponente:

mikrokontroler PIC16F877 kao centralna procesorska jedinica;mikrokontroler PIC16F877 kao centralna procesorska jedinica; MAX232 sa propratnim interfejsom za serijsku komunikaciju sa MAX232 sa propratnim interfejsom za serijsku komunikaciju sa

računarom putem koje se vrši programiranje kontrolera;računarom putem koje se vrši programiranje kontrolera; klik-klak prekidači koji definišu logičke ulaze kontrolera (visok ili klik-klak prekidači koji definišu logičke ulaze kontrolera (visok ili

nizak nivo na ulazu kontrolera );nizak nivo na ulazu kontrolera ); LED diode za indikaciju logičkih stanja na izlazu kontrolera;LED diode za indikaciju logičkih stanja na izlazu kontrolera; 74HC241 drajver za poduđivanje LED dioda;74HC241 drajver za poduđivanje LED dioda; RESET kolo za vraćanje kontrolera na početno stanje (resetovanje);RESET kolo za vraćanje kontrolera na početno stanje (resetovanje); blok za napajanje sa stabilizatorom napona na 5V.blok za napajanje sa stabilizatorom napona na 5V.

Projektni zadatakProjektni zadatak

Page 12: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Na sledećim slikama su prikazane blok šema celog Na sledećim slikama su prikazane blok šema celog sistema kao i šema štampane ploče odnosno PCB-a koje su sistema kao i šema štampane ploče odnosno PCB-a koje su izrađene u programskom paketu izrađene u programskom paketu DXPDXP korišćenjem korišćenjem programa programa Protel2004.Protel2004.

Projektni zadatakProjektni zadatak

Page 13: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Blok šema kompletnog sistemaBlok šema kompletnog sistema

Blok šema komletnog sistemaBlok šema komletnog sistema

Page 14: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Izgled štampane ploče sistemaIzgled štampane ploče sistema

Štampana pločaŠtampana ploča

Page 15: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Realizovani PLC simulatorRealizovani PLC simulator

PLC simulatorPLC simulator

Page 16: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

mikroCmikroC prestavlja moćan softverski alat, koji je prestavlja moćan softverski alat, koji je razvila beogradska razvila beogradska MikroElektronikaMikroElektronika, i namenjen je , i namenjen je pisanju koda za pisanju koda za MICROCHIPMICROCHIP-ove PIC mikrokontrolere. -ove PIC mikrokontrolere. Koristeći Koristeći mikroCmikroC, programeru je omogućen jednostavan , programeru je omogućen jednostavan način da kontroliše proces programiranja i napravi način da kontroliše proces programiranja i napravi kvalitetan kvalitetan firmwarefirmware..

MIKROC – Softver za programiranje MIKROC – Softver za programiranje PIC mikrokontroleraPIC mikrokontrolera

Page 17: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Nadalje će biti opisana instalacija Nadalje će biti opisana instalacija mikroC mikroC softvera i softvera i editovanje koda u njemu.editovanje koda u njemu.

MIKROC – Softver za programiranje MIKROC – Softver za programiranje PIC mikrokontroleraPIC mikrokontrolera

Page 18: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

InstalacijaInstalacija

Page 19: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Editovanje kodaEditovanje koda

Page 20: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Editovanje kodaEditovanje koda

Page 21: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Hex fajl koji izgeneriše Hex fajl koji izgeneriše mikroCmikroC na svom izlazu se učitava u mikrokontoler preko na svom izlazu se učitava u mikrokontoler preko mikroBootloadera mikroBootloadera što je što je nadalje opisano:nadalje opisano:

Učitavanje HEX fajla u mikrokontroler Učitavanje HEX fajla u mikrokontroler – Programiranje mikrokontrolera– Programiranje mikrokontrolera

Page 22: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Kada je program Kada je program mikroBootloadermikroBootloader pokrenut pokrenut potrebno je podesiti RS-232 komunikaciju biranjem potrebno je podesiti RS-232 komunikaciju biranjem opcije opcije Setup Port Setup Port na način prikazan na sledećoj slici:na način prikazan na sledećoj slici:

Učitavanje HEX fajla u mikrokontrolerUčitavanje HEX fajla u mikrokontroler

Page 23: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Pošto je sve to obavljeno neophodno je resetovati Pošto je sve to obavljeno neophodno je resetovati mikrokontroler pritiskom na taster predviđen za reset i u mikrokontroler pritiskom na taster predviđen za reset i u roku od dve sekunde inicirati konekciju pritiskom na roku od dve sekunde inicirati konekciju pritiskom na opciju opciju Connect.Connect. Ako je konekcija uspešno obavljena Ako je konekcija uspešno obavljena pojaviće se prozor kao na sledećoj slici:pojaviće se prozor kao na sledećoj slici:

Ukoliko se ne pojavi dati prozor potrebno je ponoviti Ukoliko se ne pojavi dati prozor potrebno je ponoviti postupak konektovanja iz početkapostupak konektovanja iz početka

Učitavanje HEX fajla u mikrokontrolerUčitavanje HEX fajla u mikrokontroler

Page 24: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Ako je konekcija uspešno izvršena potrebno je učitati već Ako je konekcija uspešno izvršena potrebno je učitati već izgenerisani HEX fajl sa zadatom funkcijom, biranjem opcije izgenerisani HEX fajl sa zadatom funkcijom, biranjem opcije Open HEX fileOpen HEX file kao na sledećim slikama kao na sledećim slikama::

Učitavanje HEX fajla u mikrokontrolerUčitavanje HEX fajla u mikrokontroler

Page 25: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Na kraju treba startovati učitavanje hex fajla pritiskom na Na kraju treba startovati učitavanje hex fajla pritiskom na dugme ”dugme ”Start bootloaderStart bootloader”.”.

Posle ušitavanja hex fajla potrebno je resetovati kontroler. Posle ušitavanja hex fajla potrebno je resetovati kontroler.

Učitavanje HEX fajla u mikrokontrolerUčitavanje HEX fajla u mikrokontroler

Page 26: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Dole navedene proste kombinacione funkcije su Dole navedene proste kombinacione funkcije su

opisane u opisane u mikroCmikroC-u i permanentno učitane u -u i permanentno učitane u mikrokontoler kako bi mogle da se pozivaju i pomoću njih mikrokontoler kako bi mogle da se pozivaju i pomoću njih realizuju zadate složene funkcije:realizuju zadate složene funkcije:

AND 2 - AND 2 - dvoulazno „I“ kolo;dvoulazno „I“ kolo; AND 3 AND 3 – trulazno „I“ kolo;– trulazno „I“ kolo; OR 2 OR 2 – dvoulazno „ILI“ kolo;– dvoulazno „ILI“ kolo; OR 3 OR 3 – troulazno „ILI“ kolo;– troulazno „ILI“ kolo; XOR – „XOR – „ekskluzivno ILI“ kolo;ekskluzivno ILI“ kolo; NOT – NOT – Invertor.Invertor.

Realizacija softvera - Realizacija zadate Realizacija softvera - Realizacija zadate kombinacione funkcijekombinacione funkcije

Page 27: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Ispod su navedeni delovi koda u kome su opisane Ispod su navedeni delovi koda u kome su opisane date funkcije u date funkcije u mikroCmikroC kompajleru koje zapravo kompajleru koje zapravo predstavljaju osnovna logička kola digitalne elektronike kao predstavljaju osnovna logička kola digitalne elektronike kao i njihovi odgovarajući simboli sa leve strane i ekvivalenti i njihovi odgovarajući simboli sa leve strane i ekvivalenti simboli ladder dijagrama sa desne strane:simboli ladder dijagrama sa desne strane:

Realizacija softvera - Realizacija zadate Realizacija softvera - Realizacija zadate kombinacione funkcijekombinacione funkcije

Page 28: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Opis logičkih funkcijaOpis logičkih funkcija

Page 29: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Opis logičkih funkcijaOpis logičkih funkcija

Page 30: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Opis logičkih funkcijaOpis logičkih funkcija

Page 31: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Opis logičkih funkcijaOpis logičkih funkcija

Page 32: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Opis logičkih funkcijaOpis logičkih funkcija

Page 33: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Opis logičkih funkcijaOpis logičkih funkcija

Page 34: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Primer :Primer :Na osnovu zadatog ladder dijagrama saNa osnovu zadatog ladder dijagrama sa naredne naredne slik slikee

isprogramirati kontroler da obavlja datu kombinacionu isprogramirati kontroler da obavlja datu kombinacionu funkciju.funkciju.

Transformacija ladder dijagrama u Transformacija ladder dijagrama u mikroCmikroC kod kod

Page 35: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Prvi korak je transformisanje ladder dijagrama u Prvi korak je transformisanje ladder dijagrama u dijagram logičkih funcija (digitalne elektornike). Najpre je dijagram logičkih funcija (digitalne elektornike). Najpre je potrebno uočiti segmente ladder dijagrama koji se direktno potrebno uočiti segmente ladder dijagrama koji se direktno mogu zameniti ekvivalentnom logičkom funkcijom kao što mogu zameniti ekvivalentnom logičkom funkcijom kao što je prethodno objašnjeno. Sledeće slike iliustruju kako se od je prethodno objašnjeno. Sledeće slike iliustruju kako se od zadatog ladder diajagrama sa zadatog ladder diajagrama sa prethodne prethodne slikeslike prelazi na prelazi na dijagram osnovnih logičkih funkcija, korak po korak.dijagram osnovnih logičkih funkcija, korak po korak.

Transformacija ladder dijagrama u Transformacija ladder dijagrama u mikroCmikroC kod kod

Page 36: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Transformacija prve lestvice ladder dijagrama u logičku šemuTransformacija prve lestvice ladder dijagrama u logičku šemu

Transformacija ladder dijagrama u Transformacija ladder dijagrama u logičku šemulogičku šemu

Page 37: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Transformacija druge lestvice ladder dijagrama u logičku šemuTransformacija druge lestvice ladder dijagrama u logičku šemu

Transformacija ladder dijagrama u Transformacija ladder dijagrama u logičku šemulogičku šemu

Page 38: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Transformacija treće lestvice ladder dijagrama u logičku šemuTransformacija treće lestvice ladder dijagrama u logičku šemu

Transformacija ladder dijagrama u Transformacija ladder dijagrama u logičku šemulogičku šemu

Page 39: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Pošto su prethodno ilustrovane lestvice ladder Pošto su prethodno ilustrovane lestvice ladder dijagrama povezene paraleleno, zaključu je se da su dijagrama povezene paraleleno, zaključu je se da su sve logičke šeme povezane u jedno troulazno “ILI” sve logičke šeme povezane u jedno troulazno “ILI” kolo, pa se na taj način dobija kompletna logička kolo, pa se na taj način dobija kompletna logička funkcija kao na funkcija kao na sledećoj sledećoj slici, koja je potpuno slici, koja je potpuno ekvivalentna ladder dijagramu saekvivalentna ladder dijagramu sa početne početne slik slikee. Izlaz . Izlaz A date konbinacione funkcije odgovara akciji A sa A date konbinacione funkcije odgovara akciji A sa početne slikepočetne slike..

Transformacija ladder dijagrama u Transformacija ladder dijagrama u logičku šemulogičku šemu

Page 40: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Drugi korak predstavlja transformaciju dobijene Drugi korak predstavlja transformaciju dobijene logičke šeme u logičke šeme u mikroCmikroC kod za programiranje kontrolera. kod za programiranje kontrolera. Sada je najpre potrebno obeležiti interne signale kao što je Sada je najpre potrebno obeležiti interne signale kao što je prikazano na prikazano na sledećoj sledećoj slici da bi se u kodu omogućilo slici da bi se u kodu omogućilo spajanje dobijenih logičkih funkcijaspajanje dobijenih logičkih funkcija. .

Transformacija ladder dijagrama u Transformacija ladder dijagrama u mikroCmikroC kod kod

Page 41: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Formiranje potrebnog koda na osnovu ovako dobijene funkcije Formiranje potrebnog koda na osnovu ovako dobijene funkcije se vrši na sledeći način:se vrši na sledeći način:

Prvo je neophodno definisati sve interne promenljive, što je Prvo je neophodno definisati sve interne promenljive, što je predstaljeno u narednom delu koda:predstaljeno u narednom delu koda:

/*Deklarisanje neophodnih promenljivih*//*Deklarisanje neophodnih promenljivih*//*Ovaj deo koda je prilagodljiv korisnickim potrebama*//*Ovaj deo koda je prilagodljiv korisnickim potrebama*/volatile char volatile char a,b,c,d,e,f,b1,d1,f1,i,j,k;a,b,c,d,e,f,b1,d1,f1,i,j,k;/*Do ovog dela kod je prilagodljiv korisnickim potrebama*//*Do ovog dela kod je prilagodljiv korisnickim potrebama*/

Transformacija ladder dijagrama u Transformacija ladder dijagrama u mikroCmikroC kod kod

Page 42: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Nakon toga je potrebno ulazne signale (In1 do In8, Nakon toga je potrebno ulazne signale (In1 do In8, koji su osetljivi na promene stanja ulaznih pinova koji su osetljivi na promene stanja ulaznih pinova kontrolera) povezati sa internim signalima koji kontrolera) povezati sa internim signalima koji predstavljaju ulaze u logička kola prvog nivoa što je predstavljaju ulaze u logička kola prvog nivoa što je prikazano u sledećem delu koda:prikazano u sledećem delu koda:

b.f0=In1;b.f0=In1;c.f0=In2;c.f0=In2;d.f0=In3;d.f0=In3;e.f0=In4;e.f0=In4;f.f0=In5; f.f0=In5;

Transformacija ladder dijagrama u Transformacija ladder dijagrama u mikroCmikroC kod kod

Page 43: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Sledeći korak je povezivanje pojedinačnih logičkih Sledeći korak je povezivanje pojedinačnih logičkih kola tako da se formira kompletna zadata logička šema što kola tako da se formira kompletna zadata logička šema što prikazuje sledeći deo koda:prikazuje sledeći deo koda:

b1.f0=INV(b.f0);b1.f0=INV(b.f0);d1.f0=INV(d.f0);d1.f0=INV(d.f0);f1.f0=INV(f.f0);f1.f0=INV(f.f0);i.f0=AND3(b1.f0,c.f0,d1.f0);i.f0=AND3(b1.f0,c.f0,d1.f0);j.f0=AND3(b1.f0,c.f0,e.f0);j.f0=AND3(b1.f0,c.f0,e.f0);k.f0=AND3(b1.f0,c.f0,f1.f0);k.f0=AND3(b1.f0,c.f0,f1.f0);a.f0=OR3(i.f0,j.f0,k.f0);a.f0=OR3(i.f0,j.f0,k.f0);

Transformacija ladder dijagrama u Transformacija ladder dijagrama u mikroCmikroC kod kod

Page 44: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Bitno je da redosled pozivanja funkcija odgovara nivoima Bitno je da redosled pozivanja funkcija odgovara nivoima logičkih funkcija tj. da de prvo obradi prvi nivo, pa drugi i logičkih funkcija tj. da de prvo obradi prvi nivo, pa drugi i tako redom do zadnjeg nivoa logičkih kola što se vidi iz gore tako redom do zadnjeg nivoa logičkih kola što se vidi iz gore navedenog koda.navedenog koda.Na kraju je potrebno interne signale sa izlaza logičkih kola Na kraju je potrebno interne signale sa izlaza logičkih kola zadnjeg nivoa povezati sa izlaznim signalima (Out1 do Out8, zadnjeg nivoa povezati sa izlaznim signalima (Out1 do Out8, koji pobuđuju izlazne pinove kontolera) što u ovom slučaju koji pobuđuju izlazne pinove kontolera) što u ovom slučaju predstavlja sledeći deo koda:predstavlja sledeći deo koda:

Out1=a.f0;Out1=a.f0;

Na ovaj način se dobijaju sledeći delovi koda koje treba Na ovaj način se dobijaju sledeći delovi koda koje treba ugraditi u kompletan softver za programiranje kontolera.ugraditi u kompletan softver za programiranje kontolera.

Transformacija ladder dijagrama u Transformacija ladder dijagrama u mikroCmikroC kod kod

Page 45: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

/*Deklarisanje neophodnih promenljivih*//*Deklarisanje neophodnih promenljivih*//*Ovaj deo koda je prilagodljiv korisnickim potrebama*//*Ovaj deo koda je prilagodljiv korisnickim potrebama*/volatile char volatile char a,b,c,d,e,f,b1,d1,f1,i,j,k;a,b,c,d,e,f,b1,d1,f1,i,j,k;/*Do ovog dela kod je prilagodljiv korisnickim potrebama*//*Do ovog dela kod je prilagodljiv korisnickim potrebama*//*Zadavanje konkretne slozene funkcije*//*Zadavanje konkretne slozene funkcije*//*Ovaj deo koda je prilagodljiv korisnickim potrebama*//*Ovaj deo koda je prilagodljiv korisnickim potrebama*/b.f0=In1;b.f0=In1;c.f0=In2;c.f0=In2;d.f0=In3;d.f0=In3;e.f0=In4;e.f0=In4;f.f0=In5;f.f0=In5;b1.f0=INV(b.f0);b1.f0=INV(b.f0);d1.f0=INV(d.f0);d1.f0=INV(d.f0);f1.f0=INV(f.f0);f1.f0=INV(f.f0);i.f0=AND3(b1.f0,c.f0,d1.f0);i.f0=AND3(b1.f0,c.f0,d1.f0);j.f0=AND3(b1.f0,c.f0,e.f0);j.f0=AND3(b1.f0,c.f0,e.f0);k.f0=AND3(b1.f0,c.f0,f1.f0);k.f0=AND3(b1.f0,c.f0,f1.f0);a.f0=OR3(i.f0,j.f0,k.f0);a.f0=OR3(i.f0,j.f0,k.f0);Out1=a.f0;Out1=a.f0;/*Do ovog dela kod je prilagodljiv korisnickim potrebama*//*Do ovog dela kod je prilagodljiv korisnickim potrebama*/

Deo Deo mikroC mikroC kodakoda

Page 46: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Bitno je zapaziti da su definisane promenljive tipa Bitno je zapaziti da su definisane promenljive tipa charchar, što , što znači da one zauzimaju memoriju veličine 1 bajt (8 bitova), pošto je u znači da one zauzimaju memoriju veličine 1 bajt (8 bitova), pošto je u ovom kompajleru nemoguće definisati promenljivu tipaovom kompajleru nemoguće definisati promenljivu tipa bitbit (kakva bi (kakva bi u ovom slučaju odgovarala jer su svi signali jedno-bitni). Da ne bi u ovom slučaju odgovarala jer su svi signali jedno-bitni). Da ne bi došlo do kolizije, neophodno je u označenom delu koda, svakoj došlo do kolizije, neophodno je u označenom delu koda, svakoj promenljivoj dodati eksteziju “.fo”promenljivoj dodati eksteziju “.fo” što označava da se primenjene što označava da se primenjene operacije izvršavaju samo nad njenim prvim bitom čime je ostvarena operacije izvršavaju samo nad njenim prvim bitom čime je ostvarena kompatibilnost između realnih signala i promenljivih koje su im kompatibilnost između realnih signala i promenljivih koje su im dodeljene, kao što je prikazano u gore navedenom delu koda.dodeljene, kao što je prikazano u gore navedenom delu koda. Kada je Kada je potrebno realizovati odgovarajuću zadatu funkciju u gore navedenom potrebno realizovati odgovarajuću zadatu funkciju u gore navedenom kodu je potrebno zameniti samo one delove koda koji su obeleženi kodu je potrebno zameniti samo one delove koda koji su obeleženi kao “delovi koda prilagodljivi korisničkim potrebama”. kao “delovi koda prilagodljivi korisničkim potrebama”.

Transformacija ladder dijagrama u Transformacija ladder dijagrama u mikroCmikroC kod kod

Page 47: Simulacija PLC kontolera pomoću PIC16F877 mikrokontrolera

Biografije autora:Biografije autora: