Opetusohjelma plc-ohjelmointiin. CoDeSys – PLC-ohjelmoijan jokapäiväinen työkalu

Kuten ensimmäisessä artikkelissa kuvattiin, PLC lukee syklisesti tuloja, suorittaa sovellusohjelman ja kirjoittaa ulostuloja. Siksi ohjelman kirjoittaminen PLC:lle eroaa perinteisestä ohjelman kirjoittamisesta mikrokontrollereille ja PC:ille. PLC-ohjelmia koskevat tiukat luotettavuusvaatimukset, yksi asia jäätyy tekstieditori, ja toinen asia on ohjelma, joka ohjaa ydinreaktoria. Toinen yhtä tärkeä vaatimus on nopea reagointi tapahtumaan. Mitä tarkoittaa, jos alan tapahtumaan ei reagoida ajoissa? Tämä tarkoittaa teknologisen prosessin hallinnan menettämistä. Joka joissakin tapauksissa, kuten reaktoriesimerkissä, johtaa korjaamattomiin seurauksiin.

Katsotaanpa eroja ohjelman kirjoittamisen PLC:lle ja mikrokontrollerille välillä. Otetaan esimerkiksi MK:n yksinkertaisin tehtävä - vilkkuva LED. Epäilen, että kaikki aloittivat tutustumisensa MK:hen tällä tehtävällä. Algoritmi tulee olemaan seuraava

  1. Kirjoita loki porttiin. 1.
  2. Väliaikainen viive
  3. Kirjoita porttiin log.0.
  4. Väliaikainen viive
  5. Siirry ohjelman alkuun merkillä.

Tämän algoritmin mukaan PLC:ssä oleva ohjelma ei toimi loputon sykli. Ja PLC:ssä kaikki sovellusohjelma suoritetaan alusta loppuun jokaisessa työjaksossa, ja minkä tahansa ohjelman on annettava hallinta järjestelmäohjelma. Siksi algoritmin tällaisella organisoinnilla PLC:mme jäätyy. Vaikka poistaisimme siirtymisen merkillä alkuun, ohjelma ei toimi haluamallamme tavalla. Portti on aina log.0-tilassa, koska lähtöjen fyysinen asennus suoritetaan vasta, kun koko sovellusohjelma on suoritettu. Ja siksi välitilat ovat vain ohjelmamuuttujia muistissa, eikä niitä näytetä millään tavalla laitteistossa.

Lisäksi olisi hyvä myös järjestää aikaviive ajastimella, tarkistamalla sen arvo ajoittain, eikä odotella turhaan, kunnes tämä tapahtuu. aika kuluu, ohjaimella on varmasti toinen tärkeämpi tehtävä.

Ylläoleva huomioon ottaen oikea algoritmi näyttäisi tältä:
1. Tarkista ajastin, jos taukoaika on kulunut umpeen
a) käännä lähtö
b) aloita uusi lähtölaskenta
2. Ohjelman loppu

Toteutamme tämän algoritmin käytännössä alla ja tarkastelemme nyt LAD (Ladder Diagram) -kielen pääpiirteitä.

Relepiiri koostuu kahdesta pystysuorasta väylästä, joiden välissä on koskettimien ja relekäämien muodostamia vaakasuuntaisia ​​piirejä. Esimerkki kuvassa:

Normaalisti avoin kontakti

Normaalisti suljettu (käänteinen) kosketin

Releen kela

Koskettimien määrä piirissä voi olla erilainen, mutta käämitys on sama.

Kaikki yhteystiedot liitetään loogiseen muuttujaan, joka määrittää sen tilan. Jos se on ok suljettu kontakti on suljettu, niin TRUE, jos se on auki, se on käänteinen, se on päinvastoin, se on suljettu, kun muuttujan arvo on FALSE; Muuttujan nimi kirjoitetaan yhteystiedon yläpuolelle ja toimii sen nimenä.

Sarjaan kytketyt koskettimet ovat vastaavia looginen toiminta Ja, ja rinnakkain asennettu TAI. Käänteinen kosketus vastaa EI-toimintoa. Rinnakkaisliitäntä käämit ovat sallittuja, mutta sarjat eivät. Relekäämi voi olla myös käänteinen, jolloin se kopioi piirin käänteisen tilan vastaavaan loogiseen muuttujaan.

Relepiirien ideana on, että kaikki piirit toimivat rinnakkain, ts. virta syötetään kaikkiin piireihin samanaikaisesti. Mutta tiedämme, että prosessori suorittaa ohjelman peräkkäin, emmekä voi tehdä sitä samanaikaisesti. Samoin LAD:ssa ohjelma suoritetaan peräkkäin vasemmalta oikealle, ylhäältä alas. Mutta prosessorin sykli on pieni, minkä vuoksi rinnakkaisuusvaikutus tapahtuu.

Jokaisella muuttujalla samassa piirissä on sama arvo. Vaikka piirin rele muuttaa muuttujaa, uusi arvo saapuu koskettimiin vasta seuraavassa jaksossa. Yllä sijaitsevat piirit saavat muuttujan uuden arvon välittömästi ja alla olevat piirit - vasta seuraavassa jaksossa. Tiukka suoritusjärjestys on erittäin tärkeä, ja niiden ansiosta LAD-kaavio pysyy vakaana takaisinkytkennöissä.

Vaikka tämä on ristiriidassa LAD:n ja relepiirien analogian kanssa, LAD-ohjelman suoritusjärjestys voidaan häiritä käyttämällä nimikkeitä ja siirtymiä. Tämä heikentää ohjelman luettavuutta, ja niiden ymmärtäminen voi olla vaikeaa, mutta kuten sanotaan, jos todella haluat, voit. Tätä varten on suositeltavaa jakaa ohjelma moduuleiksi ja tehdä siirtymiä moduulien välillä.

LAD-ohjelman ominaisuuksia voidaan laajentaa lisäämällä toimintolohkoja. Kaikki IEC:n sisältämät vakiotoimintolohkot voidaan lisätä. Toimintolohkojen kuvaukset löytyvät ohjeesta.

Luodaan ensimmäinen LAD-ohjelmamme CoDeSys-ympäristöön. , käytä vain hakukonetta

Asennuksen jälkeen valitse Luo uusi projekti, ja CoDeSys pyytää sinua valitsemaan PLC:n kohdealustan. Kohdealustan määrittäminen on välttämätöntä, jotta ympäristö tietää minkä tyyppiselle ohjaimelle ohjelmaa kirjoitetaan. Valitse 3S CodeSyS Sp PLCWinNT V2.4 ja napsauta OK.

Jätä projektin nimi oletusarvoksi, valitse kieli LD

Ohjelman käyttöliittymä on venäjänkielinen ja intuitiivinen. Kun siirrät hiiren elementin päälle, nimi tulee näkyviin. Suosittelen harkitsemaan kaikkia elementtejä sekä päävalikon kohteita.

Jos haluat lisätä ohjelmaan elementin, napsauta hiiren vasemmalla painikkeella ohjelman työkenttää ja sitten LMB-klikkaa elementtiä, jonka haluat sijoittaa ohjelmaan. Esimerkiksi normaalisti avoin kontakti, sinun pitäisi saada seuraava.

Kirjoita kysymysmerkkien sijaan muuttujamme nimi, esim. SB, ja paina Enter, muuttujan määritysikkuna tulee näkyviin, valitse Bool ja paina OK.

Harkitse, mitä tyyppejä voit valita, sekä mitkä muuttujaluokat.

Toteutetaan ohjelmia LEDin vilkkumiseen ja yleisesti ottaen ohjelma yksittäiselle pulssigeneraattorille

Ohjelman toteuttamiseen käytämme TP-ajastimen toimintolohkoa. Ajastin TP – tämä on yksipulssiajastin, jonka kesto on määritetty PT-tulossa.

Kun IN on EPÄTOSI, lähtö Q = EPÄTOSI, lähtö ET = 0. Kun IN siirtyy arvoon TOSI, lähtö Q asetetaan arvoon TOSI ja ajastin aloittaa ajastuksen lähdöstä ET, kunnes PT:n määrittämä kesto saavutetaan. Laskuri ei kasva enää. Siten Q-lähtö generoi pulssin, jonka kesto on PT IN-tulon reunalla.

Lisää TP valitsemalla työkaluriviltä:

Ja toimintolohkon valintaavustaja ponnahtaa esiin.

Lataa projektitiedosto ja katsotaan kuinka se toimii.

Alkuhetkellä X= False, joten käänteinen kosketin X on kiinni ja ajastin T2 käynnistetään, lähtö Q= tosi, joten piiri on päällä. Ja koska piirin käämitys on käänteinen, se tarkoittaa, että se kopioi piirin käänteisen tilan X:ksi ja X pysyy False, sen jälkeen kun ajastin ylivuotetaan Q = False ja käänteiskäämitys muuttaa X:n todeksi. Tämän jälkeen T1 alkaa, ylivuodon jälkeen nollaa X:n arvoon False ja kaikki toistuu. Muuttuja X on generaattorin lähtö. Ajastin T2 asettaa tauon ja T1 pulssin keston.

Projektin kokoaminen Projekti -> Kokoa

Online-osiossa valitsemme Emulointitila, ja sitten Yhteys Ja alkaa. Ja näemme, että piirimme alkaa vaihtaa, piiri, jossa "virta kulkee" on korostettu sinisellä. Myös muuttujien ilmoitusalueella näemme muuttujien nykyiset arvot.

Generaattorin lähtöä voidaan tarkastella digitaalisella jäljittimellä tehdäksesi tämän, siirry välilehteen Resurssit vasemmassa alakulmassa

Valita Digitaalinen jäljitys -> Lisäosa -> Jäljitysasetukset, seuraava ikkuna tulee näkyviin

Asetamme tallennuksen syklisyyden Käsin, napsauta hallintaa ja valitse muuttujat X(Bool)

Klikkaus Ok . Valitsemme höyhenen muuttujallemme

Valitse verkossa Yhteys, Lehdistö Alkaa, Edelleen Lisäasetukset -> Aloita jäljitys, valitse myös Automaattinen jäljitys

Tarkastellaan toista esimerkkiä moottorin ohjauksesta staattorikäämien elektronisella kommutaatiolla
En esittele itse ohjelmaa, lataa projekti. Ja kerron sinulle työn algoritmista.

Kaikki ajastimet käynnistetään käynnistyssignaalista. Jokainen ajastin mittaa hetken, jolloin vaihe päättyy. Muuttujat Y1-Y3 ovat vastaavan ohjausvaiheen lähtöjä. Jokainen lähtö kytkeytyy päälle, jos ajastin ei ole vielä ylivuoto ja edellinen lähtö on kytketty pois päältä. Viimeinen piiri on automaattinen uudelleenkäynnistyspiiri.

Esimerkiksi aloittelijoille tämä on: kuinka pääset alkuun ohjaimen kanssa, kuinka luot ensimmäisen projektisi jne. Kokeneet käyttäjät löytävät myös vastauksia tai tärkeitä vinkkejä itselleen, esimerkiksi: kuinka liittää ulkoiset laitteet ARIES PLC110 -ohjaimeen - kuten I/O-moduulit, paneeliohjaimet, taajuusmuuttajat. Lisäksi kurssi sisältää videon langattomien verkkojen luomisesta ja arkistojen ylläpidosta.

Ohjelmoitava logiikkaohjain OWEN PLC110 on suunniteltu järjestelmien luomiseen automaattinen ohjaus teknologiset laitteet teollisuuden, asumisen ja kunnallisten palvelujen sekä maatalouden eri aloilla. Kuluttaja määrittää PLC110:n toimintalogiikan ohjaimen ohjelmointiprosessin aikana.

Webinaari ARIES. Katsaus ohjaimiin ARIES PLC1xx, ARIES PLC110:

Suurin osa suosittuja kieliä PLC-ohjelmointi:

Oppitunti 1. Miksi työskentely ARIES PLC:n kanssa on helppoa tai "emme pelkää CODESYSia".

Tämän videon katsomisen jälkeen voit tuottaa kaiken esiasetukset aloittaaksesi projektin luomisen: Mitä kohdetiedostot ovat ja miksi niitä tarvitaan. Kuinka helppoa on aloittaa projektin luominen uudelle ohjaimellesi CODESYS:ssä.

Oppitunti 2. Tulojen ja lähtöjen konfigurointi.

Teoriasta käytäntöön - tai kuinka käyttää ohjaimen fyysisiä tuloja ja lähtöjä ohjelmassasi. Tutustutaan PLC-konfiguraattoriin. Opimme käyttämään ohjelman fyysisiä tuloja ja lähtöjä.

Oppitunti 3. Tulot ja lähdöt ovat mahtavia, mutta entä ohjelma?

Kirjoitamme yksinkertaista ohjelmaa CFC-kielellä, jota koneenkäyttäjät ymmärtävät. Käytämme fyysisiä tuloja ja lähtöjä ensimmäisessä ohjelmassamme.

Oppitunti 4: Luuletko, että tämä kaikki toimii?

Tärkeä oppitunti, jossa opimme paitsi ajamaan ja tarkistamaan ohjelmamme toimintaa. Pääasia on, että opimme yhdistämään ohjaimemme tietokoneella olevaan ohjelmointijärjestelmään Ethernet-liitännän kautta.

Oppitunti 5. En ole mikään "sisko" sinulle. admin"…

Yhdistämme ohjaimen PLC:hen standardin kautta COM-portti. Nykyaikaisten kannettavien tietokoneiden omistajille - tavallisen USB-portin kautta.

Oppitunti 6. Anna enemmän ja erilaisia ​​signaaleja.

Yhdistämme Mx110-laajennusmoduulit ARIES PLC110:een RS-485-liitännän kautta käyttämällä ModBus-protokolla RTU. Luimme analogisten tulojen arvot MV110-2A-moduulista. Luemme diskreettien tulojen ja ohjauksen arvon erilliset lähdöt MK110-8D.4R-moduulissa.

Oppitunti 7. Entä tekninen visualisointi? käsitellä asiaa?

Ensimmäinen sarja ARIES PLC110 -ohjaimen ja ARIES SPK107 -paneeliohjaimen yhdistämisestä trilleriin, jonka otsikko on: "Tämä on tylsää... tiedämme jo, miten tämä tehdään." Aloitamme laitteiden välisen vaihdon asettamisen konfiguroimalla (huom - ei ohjelmointia) PLC110-ohjaimen CODESYS v.2:ssa. Kaikki on normaalisti, mutta tässä tapauksessa PLC110:n asettaminen orjalaitteeksi.

Oppitunti 8. Tämä on myös oppitunnin 7 toinen osa.

Toinen sarja trilleristä ARIES PLC110 -ohjaimen ja ARIES SPK107 -paneeliohjaimen yhdistämisestä, otsikolla: CODESYS v.2 ei ole niin pelottava kuin CODESYS v.3 ei ole pelottava. Helppo opastus CODESYS v.3:n ominaisuuksiin (työ OWEN SPK -paneeliohjaimien kanssa on kuvattu tarkemmin kohdassa erilliset ohjeet ja videotunnit). Vaihteen asettaminen RS-485-protokollan kautta. Laitteiden yhdistäminen. Ohjaamme PLC110-ohjaimen lähtöjä suoraan SPK107-näytöltä.

Oppitunti 9. Ja silti hän pyörii...

Ohjaamme moottorin pyörimistä taajuusmuuttajalla ARIES PLC110 -ohjainohjelmasta RS-liitännän kautta. Ennen tämän päivän oppituntia ARIES PCV:n liittäminen RS-485:n kautta PLC:hen vaikutti monimutkaiselta.

Nyt tiedämme, että tämä ei ole totta. Kaikki on vakio. PLC-konfiguraattori, verkkovaihdon määrittäminen, vaihtoparametrien määrittäminen ARIES PLC110:n ja ARIES PCHV:n välillä. Taajuusmuuttajan asettaminen. Ohjaamme moottoria taajuusmuuttajalla suoraan ohjaimen ohjausohjelmasta.

Oppitunti 10. ARIES PLC110. No, vihdoin kooderi.

Kun tarvitsemme ohjaimen nopeaa reagointia ulkoisiin vaikutuksiin, käytämme ARIES PLC110 -ohjaimissa olevaa tehtäväkonfiguraattoria. Luomme uuden ohjelman. Konfiguroimme tämän ohjelman kutsun ei pääsilmukassa, vaan ohjelmaajastimen keskeytyessä. Esimerkkiä PLC110-nopeiden tulojen kanssa työskentelystä varten yhdistämme ohjaimeen kooderin. Mittaamme pöydällä olevan A4-paperiarkin pituuden.

Oppitunti 11. Entä viranomaiset, vai siirrämme tietoja SCADA-järjestelmään.

OWEN PLC110 -ohjainten integrointi SCADA-järjestelmiin on yllättävän helppoa. Teemme kaksi kertaa hiirellä CODESYS:ssä. On tärkeää olla unohtamatta suorittaa kaikkia yllä olevia manipulaatioita ja tässä järjestyksessä. OPC-palvelimessa meidän tarvitsee vain määrittää viestintäkanava, jonka kautta ARIES PLC110 muodostaa yhteyden SCADA järjestelmä. Voila. Kaikki on valmista. Voit käyttää muuttujia projektissasi SCADA-järjestelmässä.

Oppitunti 12. Soitetaan ARIES PLC:lle.

Yleinen ongelma etäpäivitys mukautettu projekti ARIES PLC:ssä. Yksi vaihtoehdoista esitellään tässä opetusvideossa. Yksinkertaisin ja helpoimmin toteutettavissa oleva vaihtoehto, jota sinun ei tarvitse muistaa kauhulla pelottavia sanoja GPRS, staattinen IP, VPN, DDNS ja paljon muuta. Yhdistämme tavallisen ARIES PM01 GSM -modeemin PC:hen, jonka toiselle puolelle on asennettu CODESYS, ja toiselle ARIES PLC110:n liitetyllä PM01-modeemilla. Meidän tarvitsee vain määrittää modeemit ja kirjoittaa useita tietokoneella luotuja tiedostoja ohjaimeen.

Oppitunti 13. Kirjoita minulle, kirjoita...

Kuinka voimme saada nopeasti tietoa kohteesta, jos emme voi olla koko ajan lähellä? Anna ARIES PLC110 -ohjaimen lähettää sinulle tekstiviesti, jos jotain tapahtuu paikan päällä tai vain infoviestejä kohteen tilasta. Esimerkiksi: "Kattila käytössä", "Lämp. vesi 27", " Luvaton pääsy" No, tai lähetämme tekstiviestin komennoilla ohjaimelle, ja ohjain suorittaa ohjaustoiminnot järjestelmässä. Esimerkiksi: "Käynnistä kattila", "Pysäytä uuni", "Sammuta virta". Samaan aikaan vain mielikuvituksesi rajoittaa viestien määrää, viestityyppiä ja tekstiviestien tietoja.

Konfiguroimme ARIES PM01 -modeemin yhteyden ARIES PLC110 -ohjaimeen. Yhdistämme erityisen kirjaston SMS-työskentelyä varten. Määritämme tarvittavan tekstiviestien määrän ja tekstin, jonka ne kuljettavat.

Tässä postauksessa esittelen useita yksinkertaisia ​​ohjelmia ohjaimille, jotka on suunniteltu CoDeSyS 2.3:lle ja CoDeSyS 3.5:lle. Useita vaihtoehtoja IEC-standardin ohjelmointikielille esitetään maksimissaan - ST, CFC, LD jne. Esimerkit CoDeSyS-ohjelmista auttavat sinua tietyn automaatiotehtävän toteuttamisessa.

Tästä artikkelista opit:

Hei kaikki, rakkaat ystävät, Gridin Semyon on yhteydessä. Olen menossa kohti tavoitettani opiskelemalla robotiikkaa. Luin paljon tietoa erilaisista mekaaniset komponentit, ohjelmointikielillä ja yksilevyisillä tietokoneilla.

Kyllä, opiskelen kieltä Python ohjelmointi. Testeihin ottaminen mukaan mobiilisovellus SoloLearn. Suosittelen sitä aloittelijoille, jotka ovat vasta aloittamassa opintoja. Prog venäjäksi. Jokaisella oppitunnilla sinulle selitetään kunkin operaattorin, jokaisen komennon ja kunkin toiminnon merkitys. Oppitunnin jälkeen teet kokeita ja jatkat eteenpäin. Yksinkertaisesta monimutkaiseen.

Jos jotakuta kiinnostaa niin käyttäkää!!! Artikkeli on lyhyt, joten älä vanno. Koska sanat eivät voi kuvailla paljon tässä aiheessa, lataa ja käytä sitä ohjelmissasi.

Tein muuten pienen osan netistä sähkölaskelmia, jos kiinnostaa.

Vaadittu ohjelmisto ja laitteisto

Periaatteessa käytän useimmiten OWEN-ohjaimia - PLC100/150/154, PLC63/73, PLC110/160.

CoDeSyS:ää käyttävät muistaakseni WAGO, Emko, Raspberry PI ja mielestäni jotkut ABB:n ohjaimia.

Joten mitä tarvitsemme aloittaaksemme:

  1. CoDeSyS-ohjelmointiympäristö;
  2. Ohjelmointiympäristön tarvittavat kirjastot;
  3. Kohdetiedosto laitteellesi.

Tarkempi luettelo CoDeSyS:n ohjaimista.

Kotimaiset PLC:t:

  1. Oinas PLC
  2. Fastwel Fastwel IO
  3. SKB PSIS CP6000 (psisCON™)
  4. NIL AP NLcon-CE
  5. Ota käyttöön S-7188 microPLC, 4S-PLCcore-moduuli
  6. PROLOGI MSTS
  7. ERGOS TRS (robotti)
  8. ARCTUR CEP-1
  9. JSC Avtomatika UZS-K

Venäjällä käytetyt ulkomaiset PLC:t:

  1. Beckoff
  2. Kontron
  3. WagoIO
  4. Moeller, Xsoft ohjelmointijärjestelmä
  5. Festo
  6. Berghof Panel PLC:t
  7. Mitsubishin yläosa Järjestelmän malli K
  8. HollySyS

Esimerkkiohjelmat CoDeSyS:lle

Autan sinua kehittämään ohjelmistoa PLC:lle liitän mukaan pieni lista erilaisia ​​esimerkkejä.

Neuvo on konkreettinen ja filosofinen. Esimerkeillä ja kuvakaappauksilla. lisään lisää.

Hyödynnä prosessien todellisuutta
Yksi perustavanlaatuisista eroista teknologisen prosessiohjelmoinnin ja klassisen ohjelmoinnin välillä on, että sillä on yleensä paljon alhaisempi abstraktiotaso. Algoritmit määrää prosessitekniikka, joka puolestaan ​​usein luottaa siihen maalaisjärkeä ja yksinkertainen logiikka. Tämä usein unohdetaan, kun ihmiset innostuvat ohjelmoinnista ohjelmoinnin vuoksi.

Älä sekoita syytä ja seurausta
Oletetaan esimerkiksi, että kun paine laskee, pumppu on sammutettava, ja kun pumppu sammutetaan, jokin venttiili on suljettava; Oletetaan, että sammutukselle ja sulkemiselle ei ole muita ehtoja. On virhe (jopa oletettavasti koodin optimointia varten) sulkea venttiili, kun paine laskee, koska Venttiilin sulkemisalgoritmi on tiukasti sidottu pumpun tilaan. Tutkintaketjujen pidentäminen tai muuttaminen voi johtaa vakaviin virheisiin prosessissa tai vaikeuksiin koodin muutokset.

CODESYS 2.3 -ympäristön määrittäminen
Jotkut CODESYSin oletusasetuksista ovat yllättäviä. Esimerkiksi tämä ympäristö on ainoa, jonka olen nähnyt, jossa fontti Ei monospace, ts. sen merkit ovat eri levyisiä. Siirry heti ympäristön asennuksen jälkeen osoitteeseen Projekti > Asetukset > Muokkaus > Fontti ja valitse Consolas (koodi kaikissa kuvakaappauksissa) tai ainakin Courier New.

Tämän jälkeen peruuta auto mainos(asia, joka tulee näkyviin, kun syötät jotain, jota Codesis ei tunne merkistö), tämä helvetin ponnahdusikkunoiden lähde, jota tämä ympäristö rakastaa miellyttää.

Poista työpöydän asetuksista tarpeettomat valintamerkit ja vähennä viestinnän aikakatkaisut 1000 ms:iin - tämä yksinkertaistaa elämääsi huomattavasti, usko minua.

Tarkistaaksesi koodin oikeellisuuden, kokoa koodi painamalla F11-näppäintä jokaisen muutoksen jälkeen. Napsautuksen jälkeen näytön alareunassa näkyy viestejä tämänhetkisistä virheistä tai niiden puuttumisesta. Piilota näiden viestien ylimääräinen palkki painamalla SHIFT+ESC.

Älä yritä käyttää jonkun muun koodia
Jonkun toisen koodin uudelleenkäyttö klassisessa ohjelmoinnissa on normi ja välttämättömyys monista syistä. Automaattisissa prosessinohjausjärjestelmissä ei mielestäni ole juuri tarvetta käyttää kolmannen osapuolen koodia.

En pidä itseäni ammattilaisena enkä ole kirjoittanut erityisen monimutkaisia ​​ohjelmia, mutta niille, joita kirjoitin, standardikirjastot riittivät minulle. Util.lib Ja Standard.lib. Samat Oscat-kirjastot (lataus + englanninkieliset oppaat) ovat tyylikkäitä ja kattavia, mutta niissä ei ole mitään yliluonnollista, ja minusta tuntuu, että on parempi kirjoittaa samanlaisia ​​​​toimintoja itse. Ja on parempi olla katsomatta sitä koodia, joka yleensä julkaistaan ​​foorumeilla. Jopa siitä, mitä julkaisen blogissa, on parempi vain tutustua siihen ja olla käyttämättä sitä. Kirjoita omat algoritmisi ja niin monta kuin mahdollista)

Esimerkkejä oikeasta koodista kirjastoissa
Sinun ei tarvitse mennä pitkälle ymmärtääksesi, miltä lukutaitoisen koodin pitäisi näyttää, ja oppiaksesi ohjelmointitemppuja. Avaa kirjastot Codesis-sovelluksella Util.lib Ja Oscat.lib kuten tavallisia projekteja ja omaksua linjojen viisautta.

HUOM. Saatan olla roisto, mutta tämän ohjelman avulla voit hakkeroida salasanalla suojattuja kirjastoja.

Käytä CODESYSin integroitua ohjetta
Se on tylsää, mutta useimpiin aloittelijoiden kysymyksiin löytyy vastauksia. Apu on pieni, joten on parempi käydä se läpi, jotta voit tutustua kielten ja toimintojen ominaisuuksiin.

Ohjeen soittaminen F1-näppäimellä toimii useimmille funktiosanoille ja kirjastoelementeille Util.lib Ja Standard.lib. Joskus CODESYS 2.3:ssa "F1":n kutsuminen ei toimi, esimerkiksi  SEL:lle  ja ARRAY , joten avaa ohje ja hae manuaalisesti vaadittu tunniste"Haku"-välilehdellä

Älä toista koodia
Tämä on yleisin ongelma kokemattomien ohjelmoijien keskuudessa alustasta ja ohjelmointikielestä riippumatta. Jos näet kopioitua koodia, siirrä se erilliseen funktioon tai toimintolohkoon ja/tai siirrä muuttujat taulukon elementteihin ja suorita ne silmukassa. Edellinen lause ei ehkä ole sinulle selvä, mutta voit googlettaa yksityiskohdat.

Kuvakaappaus näyttää koodin, joka käsittelee Danfossin taajuusmuuttajien tietoja. Tyyppi muuttujat CWS1_FREQ luodaan osioon. Vasemmalla on koodin ensimmäinen versio, jossa jokaista invertteriä edustaa erillinen kahdeksan rivin pala; Jokaisen kappaleen koodi eroaa vain tiedoista, mutta logiikka on sama.
Oikealla on optimoitu versio - logiikka on siirretty erilliseen GET_PUMP-toimintoon (osoitteiden ja osoittimien kanssa, joita käsittelen alla), ja tietyn invertterin koodi vie nyt yhden rivin. Jos Konfiguraatiossa oli mahdollista asettaa muuttujia taulukkoelementeiksi (tyyppiä FREQ_CWS), niin käsittelykoodi minkä tahansa IF:ien määrä väheni yhdeksi riviksi kahdessa jaksossa (katso neuvot alla).

napsauta kuvakaappausta suurentaaksesi sitä

ST-kielen edut - taulukot ja silmukat
ST-kieli jota käytän johtuen siitä, että tutustumiseni ohjelmointiin alkoi C/C++:sta. Joissakin tapauksissa on kätevää käyttää CFC:tä tai pahempaa, mutta yleensä ST on tilavampi, tiiviimpi ja selkeämpi. Mutta mikä todella erottaa sen muista kielistä, on kyky käyttää taulukoita ja silmukoita normaalisti, mikä helpottaa elämääni paljon ja lisää koodin luettavuutta.

Älä käytä liikaa silmukoita
Ottaen huomioon, että FOR-silmukat ovat erittäin käteviä, muista aina, että PLC:n koodi suoritetaan sisään superpyörä ja usein voit selviytyä yksinkertaisella lisäyksellä ja nollauksella (katso kuvakaappaus alla). Myös isot kierrokset FOR ja erityisesti WHILE voi suuresti "hidastaa" PLC:n supersykliä, kunnes se laukeaa vahtikoiran ajastin (Tästä lisää seuraavassa vinkissä). Joskus sinun on tietysti etsittävä nykyisestä supersilmukasta, ja tässä sitä on parempi käyttää FOR .

Watchdog-ajastin ja PLC-nollaus
Jos supersykli on liian pitkä, PLC tuottaa laitekäynnistys mikrokontrolleritasolla. Tämä tapahtuu, kun päästään äärettömään silmukkaan ja muihin jumiutumiseen. Watchdog-ajastin tai Watchdog vastaa syklin suoritusajan analysoinnista.

Watchdog-nollaus on erilainen kuin mikä tahansa nollaus CODESYS-ympäristön kautta. Tätä voidaan käyttää käytännössä OWEN-ohjaimissa epämiellyttävä hetki- Konfiguraatiossa luotu ModBus-moduuli (Master) lopettaa Slave-kyselyn (yleensä tämä tapahtuu ohjelman uudelleenlatauksen jälkeen). Aluksi tämä ratkaistiin nollaamalla virta, mutta sitten ilmeni vaikeuksia etälatauksen aikana Internetin kautta.

Myöhemmin huomasin, että ongelma ratkaistiin laittamalla ohjelma keinotekoisesti äärettömään silmukkaan. Näytin nollauspainikkeen visualisoinnissa. Tai voit analysoida "Pollad address" -muuttujan muutoksia" ModBusissa (Master) - jos orjalaitteita on enemmän kuin yksi, sen on vaihdettava joka sykli.

Edistynyt toimintojen käyttö
Sen lisäksi, että tulostetaan yksittäinen arvo mille tahansa vakiotyyppi funktio pystyy palauttamaan mukautetun tyypin arvot, kuten rakenteen, joka voi koostua mistä tahansa määrästä erityyppisiä muuttujia.

Mutta mielenkiintoisempaa on, että on mahdollista muuttaa muuttujia, jotka ovat funktion argumentteja itse funktiossa. Tämä on mahdollista käyttämällä osoittimia ja käsittelemällä näitä muuttujia. Voit ymmärtää mitä on alla olevasta kuvakaappauksesta, joka näyttää funktiokoodin, joka alustaa muuttujan, jos se on nolla. Funktion sisällä oleva parametri määritellään osoittimeksi haluttu tyyppi, ja funktiota kutsuttaessa parametri ei käytä itse muuttujaa, vaan sen osoitetta (ADR-funktio).

Joskus SEL on kätevämpi kuin IF
Siinä tapauksessa, että muuttujan tulee jossain tilanteessa muuttaa arvoaan ja muuten sillä on eri arvo, IF:n käyttö ei välttämättä ole paras ratkaisu. Jos ehto koskee vain tätä yksittäistä muuttujaa, käytä valitsintoimintoa SEL. Se toimii kaikentyyppisten muuttujien kanssa.

Bool ei bool
Hyvin usein törmään muiden ihmisten koodissa outoon operaatioon Boolen arvoilla tai päinvastoin Boolen logiikan huomiotta jättämiseen.
Ensinnäkin toiminnot, kuten vertailu tai tasa-arvotesti, tuottavat boolean merkityksiä.
SISÄÄN toiseksi ei ole tarvettailmeisestivertaa boolen muuttujaa arvoihin Totta vai tarua .

Visuaalinen työ petankin kanssa
Minun on usein käytettävä eksplisiittistä BOOL-muunnoksia kokonaislukujen muunnoksiksi koodini lyhentämiseksi, esimerkiksi kaavoissa. Tätä varten sinun on käytettävä type casting -funktiota sen tavallisessa, hankalassa muodossa BOOL_TO_BYTE(). Mutta eräänä päivänä törmäsin Egor Petrovin blogiin, jossa hän keksi yksinkertaisemman ja tyylikkäämmän ratkaisun - nimesi funktion olennaisesti uudelleen luettavammaksi - WHEN(). Nyt käytän sitä, voit myös käyttää sitä.

P EATON LC:t ohjelmoidaan käyttämällä ohjelmistotyökalu XSoft-CoDeSys-2.

XSoft-CoDeSys-2-ohjelmistopaketti perustuu standardiin ohjelmisto CoDeSys 3S:ltä (Smart Software Solutions, Saksa).

Huomautus: EATONilla on myös muita ohjelmistopaketteja perustuu CoDeSys-ohjelmistoon: ECP Soft (CoDeSys v2.3.5), MXpro (CoDeSys v2.3.6), easySoft-CoDeSys v2.3.9.

Yksityiskohtaiset tiedot, käyttöoppaat ja muut asiakirjat XSoft-CoDeSys-2-ohjelmistopaketista ovat saatavilla EATON-divisioonan virallisen verkkosivuston "Software -> XSoft-CoDeSys-2" -osiossa:

Yleistä tietoa CoDeSys-ohjelmistosta.

Kiitos sinun toiminnallisuus, luotettavuus ja avoimet käyttöliittymät, CoDeSys on yksi johtavista teollisuustietokoneiden ja ohjaimien automaatioohjelmoinnin alalla. Hänet valittiin perustyökalu monet maailman johtavista teollisuusautomaation laiteratkaisujen toimittajista (erityisesti Euroopassa, katso: http://www.codesys.com/company/customer-reference-table.html).

CoDeSys ohjelmointityökaluna teollisuustietokoneille ja ohjaimille on johdonmukainen ja toisiaan täydentävä elementtijoukko, joka on jaettu kahteen osaan: ohjelmointiympäristöön ja suoritusjärjestelmään.

Ohjelmointiympäristö on koko kompleksin perusta, jonka avulla voit kehittää sovellusohjelmia logiikkaohjaimille viidessä erikoistuneessa editorissa käyttäen eri IEC 61131-3 -standardin määrittelemiä kieliä:
- assembler-tyyppinen luettelo IL-ohjeista;
- Pascal-tyyppinen strukturoitu teksti ST;
- toiminnallinen lohkokaaviokieli FBD;
- relekaavioiden kieli LD;
- peräkkäisten funktionaalisten kaavioiden kieli SFC.

CoDeSys toteuttaa kuudennen erikoiskielen, Continuous Function Chart (CFC). Käytännössä nämä ovat samoja standardinmukaisia ​​FBD-toiminnallisia lohkoja, mutta niillä on mahdollisuus luoda suuret piirit elementtien ja palautteiden ilmaisella sijoittelulla.

Nämä editorit sisältävät valtavan määrän aputoiminnot, nopeuttaa ohjelmien kirjoittamista. Heidän joukossa: automaattinen ilmoitus muuttujat, syöttöavustajat, älykäs syötteen korjaus, syntaksin ohjaus ja värien korostus syötössä, skaalauksessa, automaattinen yhteys ja graafisten elementtien sijoittaminen, olio-ohjelmoinnin tuki.

keskiviikko CoDeSys ohjelmointi täysin käännetty venäjäksi, mukaan lukien ohjetiedostot ja tilannekohtaiset vinkit. 3S-verkkosivustolta voit ladata venäjänkielisen version ohjelmointiympäristöstä. Sitä jaetaan ilmaiseksi. Asennusten määrälle tai laitteistosidoksille ei ole rajoituksia.

Vakiomuotoisten IEC-kirjastojen lisäksi 3S:ssä on toteutus sisäisen CANopen-protokollakirjaston (master/slave) muodossa. Sisäiset kirjastot on kirjoitettu IEC-kielillä ja ne ovat laitteistoriippumattomia. CANopen on tuettu CoDeSysissä ja sisäänrakennetussa verkkokonfiguraattorissa, joka käyttää EDS-tiedostoja. Tämän seurauksena tämän monimutkaisen protokollan tuki CoDeSysissä on ratkaistu kaikille laitteistoalustoille.

Sisäänrakennettu CoDeSys-emulaattori mahdollistaa sovellusohjelmiston viankorjauksen ilman ohjainta. Laitteeseen kytkeytymisen jälkeen CoDeSys-ohjelmointiympäristö pystyy suorittamaan virheenkorjauksen ohjelmista ja laitteista seuraavien, muuttuvien arvojen muuttamisen ja korjaamisen, suoritusvirran valvonnan, keskeytyskohtien asettamisen, hot code -päivitysten ja reaaliaikaisen graafisen jäljityksen toiminnoilla. Jatkuvissa tuotantoprosesseissa CoDeSys pystyy korjaamaan jo käynnissä olevan ohjelman lennossa. Muutetut osat käännetään ja lähetetään ohjaimelle, ja ajonaikainen järjestelmä sisältää uuden koodin.

Ohjelmointiympäristön lähdössä sovellusohjelma muunnetaan muotoon konekoodi tietty prosessori. CoDeSysin sisäänrakennetut optimointikääntäjät luovat konekoodin, joka ladataan ohjaimen muistiin.

Ohjaimen ohjelmointi CoDeSys-ympäristöön edellyttää, että siinä on sisäänrakennettu suoritusjärjestelmä (Control Runtime System). Suoritusjärjestelmä on osa laitteistossa sijaitsevaa CoDeSys-järjestelmää. Ne asennetaan ohjaimeen sen valmistusprosessin aikana, ja ne ovat PLC-valmistajien lisensoituja.

Suuri osa ajonaikaisesta järjestelmäkoodista toimii vain ohjelman valmistelun aikana: se lataa koodia prosessorin muistiin, hallitsee tehtäviä, tarkkailee, katselee ja tallentaa muuttujia, kerää jäljitys- ja trenditietoja, sisältää optimoidun standardikirjastokoodin jne. . Sovellustehtäviä hallitseva ydin on erittäin kompakti.

CoDeSys SP RTE:llä on erityinen paikka 3S-suoritusjärjestelmien joukossa. Se on moniajo-suoritusjärjestelmä oma ydin kova todellinen aika Windows NT:ssä, 2000:ssa tai XP:ssä. CoDeSys SP RTE takaa deterministiset vasteajat mikrosekunnin tarkkuudella. Käyttöjärjestelmän laajennuksia tai lisälaitteita ei tarvita.

Tietyn laitteen kanssa työskentelyyn CoDeSys-ohjelmointiympäristö vaatii ns. kohdetiedoston. Se tallentaa prosessorin tyypin, muistin varauksen ja muut tarvittavat tiedot varusteista. Lisäksi laitevalmistaja voi tarjota CoDeSysille huomattavan määrän erityistoimintoja (järjestelmä- ja verkkomoduulikonfiguraattorit, lisätyökaluja, merkkikirjastot ja paljon muuta). Ne kaikki sisältyvät kohdealustan kokoonpanopakkaukseen. Tällainen paketti voi sisältää taitotietoa, ja se voidaan maksaa.

Jos CoDeSysin asennuksessa käytetään ohjaimen valmistajan CD-levyä, kohdealustasarja liitetään automaattisesti. Muussa tapauksessa sinun on käytettävä InstallTarget-sovellusta, määritettävä polku kohdealustan tiedostoihin (OPEN-painike) ja sitten (valitsemalla haluttu alusta) napsauta ASENNA-painiketta.

CoDeSys-viestintätyökalut sisältävät symboliset ja DDE-rajapinnat. Tietoliikennepalvelin, OPC- ja DDE-palvelimet sisältyvät ohjelmistoon. PC on vuorovaikutuksessa ohjelmointijärjestelmän kanssa apuviestintäpalvelimen (yhdyskäytävän) kautta. Viestintäpalvelin mahdollistaa vuorovaikutuksen yhden tai useamman PLC-suoritusjärjestelmän kanssa. On mahdollista, että ohjelmointijärjestelmä ja viestintäpalvelin ovat sovelluksia, jotka toimivat samalla koneella. Tässä tapauksessa viestintäpalvelin käynnistyy automaattisesti, kun Login-komento suoritetaan. Jos viestintäpalvelin sijaitsee verkossa toisella koneella, se on käynnistettävä etukäteen. Käynnissä oleva palvelin näyttää CoDeSys-kuvakkeen paneelin oikealla puolella Windowsin tehtävät. Kuvakkeen kuva on korostettu, kun yhteys PLC:n kanssa on muodostettu. Viestintäpalvelin jatkaa toimintaansa ohjelmointijärjestelmästä riippumatta ja sammuu erikseen.

Laajentaakseen CoDeSysin ominaisuuksia 3S on luonut useita lisäsovelluksia: paketti liikkeenohjausjärjestelmien rakentamiseen CoDeSys SoftMotion, suunnitteluliittymä ENI, visualisointityökalu CoDeSys HMI sekä joukko erikoiskirjastoja.

CoDeSysin sisäänrakennettu visualisointi on ominaisuuksiltaan lähellä kaupallisia SCADA-järjestelmiä. Sisäänrakennettu visualisointi ei vaadi valmistelutyötä. Visualisoinnin ja suoritusjärjestelmän läheinen suhde varmistaa maksimaalinen tehokkuus ilman lisäkustannuksia. Valmiita visualisointeja voidaan käyttää useilla eri tavoilla:
1) suoraan ohjelmointijärjestelmässä;
2) missä tahansa PC:ssä käyttämällä erillistä Win32-sovellusta CoDeSys HMI:tä;
3) Web-selaimen kautta TCP/IP-verkoissa;
4) näytöllä varustetussa ohjaimessa.

Kaikissa näissä tapauksissa ei tarvita erityistä ohjelmointia. Sama visualisointi toimii kaikkialla. Lisäksi vakio CoDeSys-paketti sisältää ilmaiset OPC- ja DDE-palvelimet. Ne tarjoavat tarvittaessa viestintää SCADA-järjestelmien kanssa.

Suunnittelurajapintaa ENI (Engineering Interface) käytetään ratkaisemaan ongelma, joka liittyy kehittäjäryhmän toimintojen synkronointiin ja kaikkien muutosten ja parannusten tarkkaan tallentamiseen suuria projekteja käsiteltäessä.

CoDeSys SoftMotion on sisäänrakennettu CoDeSys-ohjelmointiympäristöön ja suoritusjärjestelmään toimiva setti liikkeenohjaustyökalut yksinkertaisista yhden akselin liikkeistä nykyaikaisten CNC:iden moniulotteiseen interpolointiin.

XSoft-CoDeSys-2:n lyhyet ominaisuudet.

XSoft-CoDeSys-2-ohjelmistopaketti sisältää lisäkomponentteja (kohdealustasarja, asetustiedostot laitteet, erikoiskirjastot) EATONilta.

Laitteistokonfiguraattori näyttää kaikki paikalliset I/O- ja etäoheislaitteet (Profibus tai CANopen) yhdessä käyttöliittymässä.

Voit konfiguroida ja parametroida tuloja ja lähtöjä suoraan tai symbolisen nimen avulla. Tämä estää virheet PLC:n ja oheislaitteiden välisessä muuttujien osoittamisessa. On myös mahdollista testata muuttujia verkossa.

Eaton Automation tarjoaa valmiita kirjastoja ohjaimien ohjelmointia varten XSoft-CoDeSys-2-ympäristössä erilaisiin sovelluksiin.

Kirjastot yhdistetään XSoft-CoDeSys-2-kirjastonhallinnan avulla. Kirjaston yhdistämisen jälkeen sen toiminnalliset lohkot tulevat saataville kuten tavalliset.

Toimintolohkojen käyttöliittymät ovat yksinkertaisia, eikä niiden ymmärtäminen yleensä vaadi laajaa dokumentaatiota. Siten käyttäjä tarjotaan valmiita ratkaisuja automaatiotehtäviin.

Palautteen säätelytyökalut.

Sarja sisältää noin 120 toiminnallista lohkoa. Tämä mahdollistaa säätimen käytön palautetta vakiotoimintalohkojen muodossa. Toimintolohkoja voidaan yhdistää ja peräkkäin luoda mukautettuja ratkaisuja.

PID-säädin: Jaetun alueen PID-säädin tarjoaa ratkaisun tyypillinen tehtävä lämmitys ja jäähdytys. Automaattisen virityksen säädintä käytetään parametrien asettamiseen automaattisesti ennen ohjausvaiheen aloittamista.

Kolmiasentoinen säädin: Vakiomuotoisten kolmiasentoisten PID-säätimien lisäksi on saatavana vaihtoehtoja, jotka sopivat mihin tahansa venttiilin avautumisaikaan. Differentiaali- ja integraalikomponenttien skannausjaksot optimoidaan automaattisesti.

Pulssinleveysmodulaatio (PWM): Jos järjestelmässä ei ole analogista toimilaitetta, PWM:ää käytetään säätimen lähdöissä. Saatavilla vakioalgoritmi PWM ja kohinaa muistuttava signaali korkeataajuus vaihtaminen

Sumea säädin: Sumeat logiikan ohjauslohkot mahdollistavat jopa kokematon käyttäjä integroi sumea logiikka ohjausjärjestelmän konseptiin. Jopa vahvistuskerroin ja PID-asetusarvo voidaan ohjelmoida helposti sumean logiikan avulla.

Signaalinkäsittely ja simulointi: Lineaarisia viivetoimintolohkoja ja PT1-suotimia voidaan käyttää parantamaan signaalin laatua. Ensimmäisen ja kymmenennen asteen PTn-suodattimet voidaan simuloida käyttämällä toimintolohkosarjaa ilman lisäohjelmistopaketteja.

Paikannustoiminnot.

Sarja sisältää peruspaikannustoimintolohkoja perustehtäviin sekä paljon muuta voimakkaita lohkoja seuraavilla toiminnoilla:
- Asynkroninen liike pisteiden välillä.
- Master-slave-paikannus (esim. interpolointi).
- Inkrementaalinen asemointi.
- Asemointi pyörivässä optimaalisessa kulmassa kuolleen kohdan läpi.
- Automaattinen kalibrointi.
- Manuaalitila rajoitetulla askeleella.
- Valvonta ääriviivavirheitä, johtokatkoja, asemointialuetta.
- Viimeistelyalue pienemmällä nopeudella sijoituksen lopussa.
- Hydraulisten pyörivien laitteiden kuollut pisteen peittokompensointi.

Elektroninen vaihteisto.

Voidaan rakentaa käyttämällä synkronointitoimintolohkoja. Eri nopeudet voidaan synkronoida minkä tahansa välityssuhteen kanssa. Voidaan myös toteuttaa vaihelukitus ohjelmoitavalla offsetilla isäntä- ja orja- välillä. Päälaitevaihtoehtoja on kolme:
- Sisäistä isäntää ohjaa sama ohjelma.
- Ulkoinen laite käyttää ulkoista isäntälaitetta ohjaamaan isäntälaitetta. Inkrementtianturi rekisteröi kaikki pääakselin liikkeet.
- Virtuaalisen isäntälaitteen avulla orja-akselit synkronoidaan simuloidun kanssa.

Sovellukset: puristimen synkronointi virtuaalisen johtajan kanssa, hihnakäyttöjen vaiheiden ja nopeuksien synkronointi, aaltoilevien materiaalien piirtäminen 5 ajetulla akselilla kasvavilla välityssuhteilla.

Lentävä saha.

Tämä toiminto on yhdistelmä elektronista vaihdetta ja paikannusta. Paikannus suoritetaan suhteessa liikkuvaan kohteeseen.

Viestintätoiminnot.

Tavallisen lisäksi etäyhteydet oheislaitteiden kanssa kenttäväylän kautta, kuten CANopen tai Profibus, tärkeä on yhteyksiä PLC:iden välillä ja yhteyksiä korkeamman tason järjestelmiin. OPC, FTP, TCP/IP, sähköposti, web ovat vain muutamia teknologioista, joita voidaan käyttää tiedostojen yhdistämiseen ja vaihtamiseen.

FTP-palvelin: Eaton Automation -ohjain käyttää standardia tiedostojärjestelmä ohjelmien tallentamiseen. Tämä koskee myös ulkoisia muistikortteja, jotka on kytketty kautta USB-liitäntä. Parametrijoukot (reseptit) voidaan luoda yksinkertaisesti tavallinen tiedosto ja siirrettiin PLC:hen. Tällä tavalla voit helposti päivittää tällaiset tiedot missä tahansa tietokoneessa.

FTP-asiakas: Toiminnon avulla voit tallentaa PLC:n luomia tiedostoja verkkoasemille. Jos esimerkiksi vastaanottava asema ei ole käytettävissä verkko-ongelmien vuoksi, voidaan tallennukseen valita toinen verkkoasema. Päivittäiset ja viikoittaiset lokit voidaan siten tallentaa paikallisesti ja arkistoida automaattisesti milloin tahansa. Tiedoston kirjoittaminen PLC:stä verkkoasemaan vaatii vain muutaman toimintolohkon kutsumisen.

UDP ja TCP/IP: Näitä protokollia käytetään useilla verkkoalustoilla, jotka mahdollistavat yksinkertaisen, standardoidun tiedonsiirron PLC:iden ja ulkoisia laitteita. Nämä voivat olla muita tietokoneen ohjaimia tai sovelluksia.

Modbus RTU/TCP: Tämä viestintäprotokolla, käytetty laajasti erilaisia ​​tyyppejä verkkoja. Modbus voidaan toteuttaa perustuen sarjaliitäntä(RS232/485) tai Modbus IP Ethernet. Saatavilla on valmiita kirjastoja Modbus-mastereille ja orjille.

OPC-palvelin: Melkein kaikki SCADA-järjestelmät, visualisointi- ja ohjausjärjestelmät tukevat OPC-asiakas/palvelin-liitäntää. Ohjaimet käyttävät OPC-palvelinta tietojen esittämiseen OPC-asiakkaille. OPC-palvelin tukee tietojen käyttöä sarjaliitännän kautta ja jokainen OPC-palvelin pystyy käsittelemään useiden asiakkaiden pyyntöjä. Jos tietoja on käytettävä useita kertoja, esimerkiksi järjestelmän tai tietokannan visualisointiin, eri ohjelmistopaketit pääsevät käsiksi tietoihin OPC-palvelimen kautta ilman, että eri valmistajien vaatimuksia ja standardeja on yhdenmukaistettava.

Tekstiviestit ja sähköposti: Tilatietoja tai virheilmoituksia voidaan lähettää tekstiviestillä tai sähköpostilla - sekä kirjaamista varten että suoraa yhteydenpitoa varten huoltoteknikkojen kanssa. Valmiit käyttäjämoduulit tarjoavat kaikki mahdollisuudet automaation toimintatilan jatkuvaan seurantaan.

Sisäänrakennettu visualisointi.

Ohjelmointijärjestelmä sisältää sisäänrakennetun visualisointieditorin. Se tarjoaa joukon valmiita graafisia elementtejä (suorakulmio, pyöristetty suorakaide, ellipsi, polygoni, polyline, käyrä, sektori, bittikartta *.bmp, visualisointi, painike, taulukko, ActiveX-elementti, osoittimen ilmaisin, sarakkeen ilmaisin, histogrammi, hälytystaulukko, trendi, WMF-tiedosto). Nämä elementit voidaan linkittää vastaavasti projektimuuttujiin. Graafisten elementtien muoto ja väri muuttuvat ohjelman ollessa käynnissä muuttujien arvojen mukaan.

Sovellusta kehitettäessä käyttäjä voi luoda visualisointilomakkeita suoraan ohjelmointijärjestelmässä.

Mitään lisätyökaluja ei tarvita ohjaimen tietojen tarkkailemiseen ja muuttamiseen. Ohjelmointijärjestelmän sisällä luotuja lomakkeita voidaan käyttää 4 erilaisia ​​tiloja toteutus ilman muutoksia, tarvittaessa jopa rinnakkain:

1. Suoraan ohjelmointijärjestelmässä: Jos PLC on kytketty ohjelmointijärjestelmään, niin testausta varten ja käytännön käyttöä Luomasi visualisointilomakkeet eivät tarvitse enempää. Interaktiivisessa tilassa saat välittömästi todellisen esityksen visualisoinnista ohjelmointijärjestelmän sisällä.

2. Windows - Visualisointi, CoDeSys HMI: Win32 CoDeSys HMI -ohjelma näyttää visualisointilomakkeet PC:llä ilman CoDeSys-ohjelmointiympäristön asentamista. Se vaihtaa viestejä PLC:n kanssa saman rajapinnan kautta kuin ohjelmointiympäristö. OPC (OPC - OLE for Process Control) tai DDE (DDE - Dynamic Data Exchange) -mekanismeja ei vaadita.

3. Verkkovisualisointi: Vaihtoehtoisesti XSoft-CoDeSys-2 luo XML-kuvauksen visualisointitiedoista, joka ladataan java-sovelman mukana (sovelma on kielellä kirjoitettu ohjelma JAVA ohjelmointi, jonka selaimet voivat suorittaa) ohjaimeen ja näytetään TCP/IP:n kautta selaimessa (katseluohjelma). Siten visualisointitiedot useilla eri tietokonealustoilla näytetään interaktiivisesti.

4. Kohteen visualisointi: Integroidulla näytöllä varustetuissa ohjaimissa ohjelmointijärjestelmän visualisointitiedot voidaan ladata sovelluksen mukana kohdejärjestelmä. Ne näkyvät automaattisesti sisäänrakennetulla näytöllä.

Kaikki EATON-kosketuspaneelit eivät tue CoDeSys-kohteen visualisointia.

Esimerkiksi EATONin XV-2xx-sarjan kosketuspaneeli ei tue CoDeSys-kohteen visualisointia:

EATONin XV-1xx-sarjan kosketuspaneeli tukee CoDeSys-visualisointia:

Pikakäynnistys - projektin luominen.

Projekti sisältää seuraavat objektit: POU, tietotyypit, visualisoinnit, resurssit, kirjastot.

Ohjelmistoyksiköt (POU) sisältävät toimintolohkoja, toimintoja ja ohjelmia. Jokainen ohjelmistokomponentti koostuu ilmoitusosasta ja koodiosasta. Vain yhtä IEC-ohjelmointikieliä käytetään kaiken POU-koodin kirjoittamiseen.

Funktio on POU, joka palauttaa vain yhden arvon.

Toimintolohko on POU, joka hyväksyy ja palauttaa mielivaltaisen määrän arvoja.

Ohjelma on POU, joka voi tuottaa mielivaltaisen määrän arvoja laskelmien aikana.

Ohjelmia tai toimintolohkoja voidaan täydentää toimilla. Itse asiassa toimet ovat lisäsarja POU:n sisäänrakennetut aliohjelmat. Toiminnot voidaan kuvata eri kielellä kuin se, jolla vastaava toimintolohko tai ohjelma suoritetaan.

CoDeSys tukee kaikkia IEC-operaattoreita: aritmeettiset operaattorit; bittioperaattorit; vuoro operaattorit, valinta operaattorit; vertailuoperaattorit; osoite operaattorit; soittaa operaattorille; tyyppimuunnokset; matemaattiset funktiot.

Projekti voi käyttää useita kirjastoja, jotka sisältävät POU:t, niiden vaatimat tietotyypit ja globaalit muuttujat. Kirjaston POU:ita voidaan käyttää samalla tavalla kuin käyttäjän määrittämiä.

Vakiotietotyyppien (perus) lisäksi: looginen, kokonaisluku, rationaalinen, merkkijonot, aika ja päivämäärä, voit luoda niiden perusteella omia (mukautettuja) tyyppejä: taulukoita, osoittimia, luettelointia, rakenteita, tyyppialiaksia, rajoittamalla tietoaluetta. arvot.

Operandit voivat olla vakioita, muuttujia, osoitteita ja funktiokutsuja.

Kun luot uutta projektia, sinun on valittava PLC, jolle ohjelma kirjoitetaan:

Tässä tapauksessa on tarpeen määrittää tämä PLC ratkaistavaa tehtävää varten:

Luo sitten ohjelmistokomponentit tarvitaan ongelman ratkaisemiseksi:

Lisää sitten ongelman ratkaisemiseksi tarvittavat kirjastot, jos niitä ei yhdistetä automaattisesti:

Visualisoinnin avulla käyttäjä voi luoda graafisen esityksen ohjausobjektin suunnittelusta. Se on suoraan linkitetty CoDeSysissä luotuun ohjainohjelmaan.

Ohjelmoinnin jälkeen käännä projekti ja korjaa mahdolliset virheet:

Kun olet poistanut virheet, aloita virheenkorjaus. Ota emulointi käyttöön:

Napsauta CONNECT-painiketta, tarkista, onko projekti suoritettu oikein. Tätä varten sinun on muutettava manuaalisesti tulotietoja ja varmistettava, että säätimen lähdöt reagoivat oikealla tavalla. Tarvittaessa voit tarkkailla muuttujien arvoja ohjelmistokomponenteissa:

Reseptinhallinnan avulla voit määrittää luettelon muuttujista, joiden arvoja on noudatettava.

Jos koodissa on virheitä, voit asettaa keskeytyspisteitä. Kun prosessi pysähtyy tietyssä kohdassa, voit tarkastella projektimuuttujien arvoja Tämä hetki aika. Suorittamalla projektin vaihe vaiheelta voit tarkistaa ohjelmiesi loogisen oikeellisuuden.

Virheenkorjauksen aikana voit asettaa arvoja ohjelman muuttujat, asettaa kiinteitä arvoja ohjaimen tuloille ja lähtöille, ohjata prosessin suoritusjärjestystä ja määrittää paikka suoritettavassa ohjelmassa.

Lokikirjatoiminnon avulla voit tallentaa toimintoja, käyttäjän toimia ja edistymistä kronologisessa järjestyksessä. Tämä on tarpeen analysoitaessa virheolosuhteita virheenkorjauksen aikana.

Jäljitystä käyttämällä voit jäljittää graafinen esitys muuttuvien arvojen muutokset tietyn ajanjakson aikana, mahdollisesti liittymällä tapahtumaan.

Kun projektin virheenkorjaus on tehty, tarkista lopuksi ohjelman toiminta työolosuhteissa todellisella laitteistolla. Samaan aikaan kaikki virheenkorjaustoiminnot ovat täysin käytettävissä. Tämän toiminnon suorittamiseksi sinun on poistettava emulointitila käytöstä ja määritettävä yhteys PLC:hen - ONLINE ‒> VIESTINTÄPARAMETRIT:


Paina CONNECT-painiketta, tarkista ohjelman suoritus ohjaimessa: