Orain badaukagu programazio ingurunea prest, badakigu nola egiten den Ladder diagrama bat eta badakigu nola itzuli diagrama bat Arduinok erabilitako C++ lengoaiara plcLib liburutegiak eskainitako funtzioen bitartez. Bada garaia guzti hau pneumatikan lantzen ditugun kasuetan aplikatzeko.
A+B+B-A-
Ziklo honetan, efektu bikoitzeko bi zilindro pneumatiko ditugu (A eta B), eta zilindro bakoitza 5/2 elektro-balbula biegonkorra bati konektatuta dago. Azkenik, zilindro bakoitzaren ibiltartearen hasieran eta bukaeran, detektagailu mekaniko bat daukagu, zilindroa ibiltartearen amaiera noiz iristen den jakiteko.
Ziklo automatiko hau beteko dute: A+ (A atera), B+ (B atera), B- (B jaso), A- (A jaso):
Eskema mota honetan, hiru elementu mota bereizten dira:
- Etapak: zikoaren barruan zein etapan gauden adierazten dute.
- Trantsizio baldintzak: etapa batetik bestera pasatzeko bete behar diren baldintzak dira. Prozesu industrialetan, hainbat mota desberdinetako baldintzak topatu ditzakegu: tenperatura batera iristea, denbora bat igarotzea edo, kasu honetan bezala, zilindroa ibiltartearen amaierara iristea (a0, a1, b0 eta b1) eta zikloari hasiera ematen dion etengailua piztuta egotea (S1).
- Ekintzak: etapa bakoitzak hainbat ekintza egin ditzake, besteak beste, labe bat piztu, denboragailu bat martxan jarri edo, kasu honetan bezala, elektrobalbula baten harila piztu (A+, A-, B+ eta B-).
Zilindroak, elektrobalbulak eta ibiltartea amaierako detektagailuak muntatzeko, ondoko eskema jarraituko dugu:
Ziklo hau interesgarria da seinaleen artean konflikto uneak ematen direlako. Hau errazago ikusteko, mugimenduen eta seinaleen azterketa egingo dugu:
Kasu honetan, etapen trataera esplizitua derrigorrezkoa da, horrela desagertzen baita seinaleen arteko konfliktoa. Dena den, gure diseinua fidagarriagoa izateko komenigarriena da etapak BETI esplizituki jasotzea programan, nahiz eta zikloan konfliktorik ez egon. Ladder diagrama egiterakoan, etapa bat SetReset edo ResetSet blokeen bitartez adierazi dezakegula ikusiko dugu.