Bok tamo! Kao Siemensov dobavljač PLC-ova, često me pitaju o stvaranju korisnički definiranih funkcijskih blokova u Siemensovim PLC-ovima. Prilično je cool i koristan aspekt rada s ovim PLC-ovima, pa sam mislio podijeliti svoje uvide o tome kako to učiniti.
Prvo, shvatimo što su korisnički definirani funkcijski blokovi. Jednostavno rečeno, oni su poput prilagođenih programa ili rutina koje možete izraditi za obavljanje određenih zadataka. Ovi se blokovi mogu ponovno koristiti više puta u različitim dijelovima vašeg PLC programa, što štedi puno vremena i truda. To je kao da imate vlastiti skup građevnih blokova koje možete koristiti za izgradnju složenijih sustava.
Korak 1: Razumijevanje osnova
Prije nego počnete stvarati korisnički definirane funkcijske blokove, morate dobro razumjeti Siemens PLC programsko okruženje. Upoznajte se s programskim jezikom koji ćete koristiti, kao što je Structured Text (ST), Ladder Diagram (LD) ili Function Block Diagram (FBD). Svaki jezik ima vlastitu sintaksu i način na koji stvari rade, pa odaberite onaj koji vam najviše odgovara.
Recimo da koristite ljestvičasti dijagram. To je grafički programski jezik koji koristi simbole za predstavljanje logičkih operacija. Vidjet ćete stvari poput kontakata, zavojnica i mjerača vremena. Razumijevanje načina na koji ti simboli rade zajedno ključno je za stvaranje učinkovitih funkcijskih blokova.
Korak 2: Definiranje funkcijskog bloka
Nakon što se snađete u programskom okruženju, vrijeme je da definirate svoj funkcijski blok. Razmislite o tome što blok treba raditi. Na primjer, možda želite stvoriti funkcijski blok koji kontrolira brzinu motora na temelju zadane vrijednosti.
Da biste definirali funkcijski blok, morat ćete navesti njegove ulaze i izlaze. Ulazi su vrijednosti koje će funkcijski blok primiti, a izlazi su vrijednosti koje će proizvesti. U primjeru upravljanja brzinom motora, ulazi mogu biti zadana brzina i trenutna brzina motora, a izlaz može biti upravljački signal za motor.
U Siemens PLC softveru za programiranje, obično možete definirati funkcijski blok stvaranjem novog bloka i specificiranjem njegovog naziva, ulaza i izlaza. Također možete dodati komentare kako bi blok bio razumljiviji.
Korak 3: Pisanje logike
Sada dolazi zabavni dio – pisanje logike za vaš funkcijski blok. Ovdje koristite programski jezik da kažete PLC-u što treba učiniti s ulazima kako bi proizveo željene izlaze.
Vratimo se na primjer upravljanja brzinom motora. Za izračunavanje upravljačkog signala možete koristiti PID (proporcionalno-integralni-derivacijski) regulator. U ljestvičastom dijagramu možete koristiti upute kao što su Usporedba, Dodavanje i Množenje za izvođenje potrebnih izračuna.
Evo jednostavnog primjera kako bi logika mogla izgledati u strukturiranom tekstu:


FUNCTION_BLOCK MotorSpeedControl VAR_INPUT Zadana vrijednost brzine: REAL; Trenutna brzina: STVARNA; END_VAR VAR_OUTPUT Kontrolni signal : REAL; END_VAR // Izračunajte pogrešku Error := SetpointSpeed - CurrentSpeed; // Izračunajte upravljački signal pomoću jednostavnog proporcionalnog regulatora ControlSignal := Error * Kp; END_FUNCTION_BLOCK
U ovom primjeru,Kpje proporcionalni dobitak, koji ćete morati podesiti da biste dobili najbolju izvedbu.
Korak 4: Testiranje i otklanjanje pogrešaka
Nakon što ste napisali logiku za svoj funkcijski blok, važno ga je testirati kako biste bili sigurni da radi prema očekivanjima. Možete koristiti značajke simulacije u Siemens PLC softveru za programiranje za testiranje funkcijskog bloka bez potrebe za spajanjem na pravi PLC.
Tijekom testiranja možete naići na neke pogreške ili neočekivano ponašanje. Ovdje na scenu dolazi ispravljanje pogrešaka. Koristite alate za ispravljanje pogrešaka u softveru da koračate kroz program, provjerite vrijednosti varijabli i otkrijete gdje je problem.
Korak 5: Korištenje funkcijskog bloka
Nakon što ste testirali i otklonili pogreške u funkcijskom bloku, možete ga početi koristiti u svom glavnom PLC programu. Možete jednostavno pozvati funkcijski blok i proslijediti mu odgovarajuće ulaze. Funkcijski blok će tada izračunati izlaze i vratiti ih u vaš glavni program.
Na primjer, u vašem glavnom programu možete imati nešto poput ovoga:
PROGRAM Glavni VAR MyMotorSpeedControl : MotorSpeedControl; Zadana vrijednost: STVARNO := 100,0; Trenutni : REAL; Kontrola : REAL; END_VAR // Očitajte trenutnu brzinu sa senzora Current := ReadCurrentSpeed(); // Poziv funkcijskog bloka MyMotorSpeedControl(SetpointSpeed := Setpoint, CurrentSpeed := Current); // Dobivanje upravljačkog signala Control := MyMotorSpeedControl.ControlSignal; // Slanje upravljačkog signala motoru SendControlSignal(Control); END_PROGRAM
Korištenje specifičnih Siemens PLC proizvoda
Kada radite sa Siemensovim PLC-ovima, možda biste željeli koristiti određene proizvode u svojim projektima. Na primjer,Siemens LOGO! DM16 24je izvrsna opcija za male i srednje aplikacije. Lako ga je programirati i ima širok raspon ulaznih i izlaznih opcija.
Još jedan koristan proizvod jeSiemens 6GK7443-1EX11-0XE0 Industrijski Ethernet modul. Ovaj modul vam omogućuje povezivanje vašeg PLC-a s Ethernet mrežom, što je izvrsno za daljinski nadzor i kontrolu.
A ako radite na većem projektu,Siemens 6ES7414-3EM06-0AB0je snažan CPU koji se može nositi sa složenim zadacima.
Zaključak
Stvaranje korisnički definiranih funkcijskih blokova u Siemensovim PLC-ovima izvrstan je način da svoje programiranje učinite učinkovitijim i organiziranijim. Slijedeći gore navedene korake, možete kreirati vlastite prilagođene funkcijske blokove i koristiti ih za izgradnju složenijih kontrolnih sustava.
Ako ste zainteresirani za kupnju Siemens PLC proizvoda ili imate bilo kakvih pitanja o stvaranju korisnički definiranih funkcijskih blokova, slobodno nam se obratite. Tu smo da vam pomognemo sa svim vašim Siemens PLC potrebama. Bez obzira jeste li mala tvrtka koja traži jednostavno rješenje ili velika korporacija koja radi na složenom projektu, mi imamo proizvode i stručnost da vam pomognemo.
Reference
- Siemens PLC programski priručnici
- Online upute i forumi vezani uz Siemens PLC programiranje
