Yunit 6 / 9

Industrial Automation at PLC Programming

Mga nadagdag:

  • Kakayahang gumawa ng Ladder logic at Structured Text (ST) na mga istruktura bilang mga draft na may AI
  • Kakayahang i-configure ang mga circuit ng kaligtasan, interlock at state machine sa tulong ng AI
  • Kakayahang i-verify ang AI-generated PLC logic laban sa I/O map at mga kinakailangan sa kaligtasan

Ang pangalan ng pagiging maaasahan sa larangan ng pabrika ay PLC (Programmable Logic Controller). Conveyor, robot cell, filling lines, presses; lahat ay kinokontrol ng mga PLC. Ang PLC programming ay isang mundo bukod sa desktop software: Ang Ladder Logic (LD) ay isang visual na wika na ginagaya ang relay logic, habang ang Structured Text (ST) ay isang textual na wika na tulad ng Pascal; parehong tinukoy sa pamantayan ng IEC 61131-3. Sa kapaligirang ito, ang pinakamahalagang bagay ay hindi ang pag-andar ngunit kaligtasan; dahil ang isang logic error ay maaaring isara ang isang press sa maling oras, na mapanganib ang isang operator. Tumutulong ang AI sa pagbuo ng hagdan at ST draft, pagbuo ng mga state machine at pagdodokumento ng lohika. Gayunpaman, ang mga circuit ng kaligtasan, interlock at huling pag-verify ay responsibilidad ng engineer at hindi maaaring italaga sa AI. Sa unit na ito, saklaw namin kung paano bumuo at mag-verify ng lohika ng PLC gamit ang AI.

Working Logic ng PLC: Scanning Cycle

Ang PLC ay hindi lamang nagpapatakbo ng code nang isang beses at ito ay tapos na; Nagsasagawa ito ng tuluy-tuloy na ikot ng pag-scan. Sa bawat loop: (1) binabasa ang lahat ng mga input, (2) nagsasagawa ng lohika mula sa itaas hanggang sa ibaba, (3) ina-update ang lahat ng mga output. Ang cycle na ito ay tumatagal ng millisecond at umuulit nang walang hanggan. Ang pag-uugali na ito ay may mga kritikal na kahihinatnan kapag nagsusulat ng lohika ng PLC:

  • Ang mga output ay ina-update sa dulo ng loop; Kung magtatalaga ka ng halaga sa isang output sa higit sa isang lugar sa loob ng loop, ang huling pagtatalaga ang mananalo.
  • Gumagana ang lohika mula sa simula sa bawat cycle; kaya ang latch o mga variable ng estado ay ginagamit upang "tandaan" ang estado.
  • Maaaring makaligtaan ang mabilis na mga kaganapan kung ang oras ng pag-scan ay pinalawig; ang mga kritikal na kaganapan ay nakukuha ng hardware interrupt o high-speed counter.
Tip: Kapag nagsusulat ng PLC logic sa AI ​​sasabihin "isaalang-alang ang pag-uugali ng pag-scan ng loop, walang magkasalungat na pagtatalaga sa parehong output, gumamit ng latch/state machine para sa estado". Minsan iniisip ng AI na parang desktop logic at nilalaktawan ang gawi sa pag-scan.

Ladder Logic at Structured Text

Ang parehong lohika ay maaaring isulat sa parehong mga wika. Isang simpleng halimbawa: magsisimula ang motor kapag pinindot ang start button, huminto at self-latch kapag pinindot ang stop button.

LADDER (text display): Start Stop Engine---| |------|/|-------------( )--- | Makina |---| |------+ (Pinapanatili ng motor contact ang sarili nito -> seal-in) Paliwanag: Kapag pinindot ang Start, ang Engine ay pinalakas; Ang motor ay nagpapanatili ng kasalukuyang sa pamamagitan ng sarili nitong contact (seal-in). Kapag pinindot ang Stop (NC), ang kadena ay pinutol.

(* Parehong lohika gaya ng STRUCTURED TEXT *)KUNG Magsimula AT HINDI Huminto THEN Engine := TRUE;END_IF;KUNG Huminto THEN Engine := FALSE; (* Palaging inuuna ang Stop *)END_IF;(* Tandaan: Ang Stop button ay pisikal na konektado sa NC (normally closed); kaya kung masira ang cable, Stop=FALSE at lumipat ang system sa safe side. *)

Ang detalye ng kaligtasan dito ay kritikal: Ang stop button ay pisikal na konektado normally closed (NC). Kaya, sa kaso ng cable breakage o contact failure, ang signal ay pinutol at ang sistema ay pupunta sa "stop" na direksyon (fail-safe). Kung ang NO (normally open) ay konektado, hindi gagana ang stop kung masira ang cable—isang mapanganib na silent fault. Kahit na ang AI code ay tila lohikal na tama, ang pisikal na pagpapasya sa koneksyon ay nakasalalay sa engineer.

Kaligtasan: E-Stop, Lockout at Fail-Safe

Ang kaligtasan sa automation ng industriya ay hindi isang isyu na maaaring "hawakan sa software"; Ito ay isang layered na pakikipagtulungan ng hardware at software. Mga pangunahing prinsipyo:

prinsipyo

Ibig sabihin

Aplikasyon

mabibigo-ligtas

Ang pagkabigo ay dapat humantong sa ligtas na panig

NC contact, fault=stop

Redundancy

Kritikal na function na dalawahang channel

Dalawang contact, cross monitoring

Interlocking

Pigilan ang mapanganib na sitwasyon

Hindi gumagana ang makina kapag nakabukas ang pinto

e-stop

Malayang emergency stop

Sa antas ng hardware, independyente sa PLC

Kritikal na punto: Ang e-stop ay hindi naiwan sa software na nag-iisa. Ang emergency stop na nauugnay sa kaligtasan ay madalas ding naaantala sa antas ng hardware sa pamamagitan ng mga safety relay o safety PLC; ang karaniwang PLC software ay isang karagdagang layer sa ibabaw nito. Ang ISO 13849 (kaligtasan sa makina) at IEC 62061 ay nagbibigay ng balangkas para sa mga disenyong ito.

Babala: Huwag ipagpalagay na ang isang AI-generated na E-stop o locking logic ay "sapat na software". Ang mga function ng kaligtasan ay idinisenyo ayon sa mga nauugnay na pamantayan (ISO 13849 PL, IEC 62061 SIL), may kasamang layer ng hardware at na-verify sa pamamagitan ng pagtatasa ng panganib. Ang pagsusuring ito ay responsibilidad ng inhinyero at ng organisasyon; Makakagawa lang ang AI ng mga outline at checklist.

Mga Makina ng Estado

Ang kumplikadong lohika ng automation ay inayos gamit ang isang makina ng estado sa halip na isang magulo kung-iba: ang system ay nakakahanap ng ilang mga estado (Idle, Starting, Running, Stopping, Error) at nagpapatuloy sa pamamagitan ng tinukoy na mga transition. Ang istrukturang ito ay parehong nababasa at nabe-verify.

(* Simple filling station state machine *) CASE Case NG 0: (* BOSTA *) KUNG StartButton AT CoverClosed THEN Case := 10; END_IF; 10: (* FILL *) Valve := TOTOO; IF LevelFull THEN Valve := FALSE; Katayuan := 20; END_IF; KUNG HINDI CoverClosed THEN Valve := FALSE; Katayuan := 90; END_IF; (* kaligtasan *) 20: (* DRAIN *) PURGE := TOTOO; KUNG LevelEmpty THEN Empty := FALSE; Katayuan := 0; END_IF; 90: (* ERROR *) Valve := FALSE; Walang laman := FALSE; (* ligtas ang lahat ng actuator *) KUNG ResetButton THEN Status := 0; END_IF;END_CASE;

Sa istrukturang ito, malinaw na kasama sa bawat sitwasyon ang mga paglilipat sa kaligtasan (pumunta sa status ng error kung ang takip ay binuksan, isara ang lahat ng actuator). Mabilis na bumubuo ang AI ng state machine skeleton; Ngunit aling insidente sa kaligtasan ang lalabas kung aling sitwasyon ang nagmumula sa iyong pagsusuri sa panganib.

Mahina Prompt / Malakas na Prompt

MAHINA:"Sumulat ng PLC code para sa isang conveyor."(Walang I/O, walang kaligtasan, hindi malinaw na wika. Hindi magawang mag-field draft.) MALAKAS:"Sumulat ng conveyor control gamit ang IEC 61131-3 Structured Text. Mga Input:Start (NO), Stop (NC), PhotocellProductVar (NO), CoverOpen (NC Warning, Conveyor Modle) Tumatakbo, Error) Palaging inuuna ang paghinto, pumunta sa Error kapag Bukas ang Lid at isara ang makina.

Mini Case

Ang automation engineer na si Tolga ay humihiling ng ST code mula sa AI para sa isang packaging line. Gumagawa ang AI ng code na mukhang gumagana, ngunit kapag napatunayan ito ni Tolga laban sa I/O map, nakahanap siya ng dalawang problema. Una: Tinatrato ng AI ang Stop button na may NO (normally open) logic; Ginagawa ito ni Tolga sa NC fail-safe logic, dahil kapag naputol ang cable, dapat huminto ang linya. Pangalawa: ang pagla-lock, kung saan dapat huminto ang makina kapag nakabukas ang proteksiyon na takip, ay sinusuri lamang sa pagsisimula, hindi sa panahon ng operasyon; Itinatama ito ni Tolga upang ito ay masuri sa bawat cycle ng pag-scan. Kinukumpirma rin nito na ang aktwal na E-stop ay hindi naiwan sa software, ngunit naaantala din sa hardware na may safety relay. Mabilis na ibinigay ng AI ang logic skeleton nito; Ngunit ang pag-verify ng engineer ay nakakuha ng tatlong desisyon sa kaligtasan: fail-safe na koneksyon, permanenteng pag-lock at hardware E-stop.

Mga Karaniwang Pagkakamali

  • Ikinonekta ang Stop/E-stop button sa NO at mawala ang fail-safe na gawi kung sakaling masira ang cable.
  • Sinusuri ang interlocking (takip, light curtain) lamang sa startup at laktawan ito sa operasyon.
  • Ipaubaya nang buo ang function ng seguridad sa software at pagpapabaya sa layer ng hardware.
  • Nakalimutan ang pag-uugali ng pag-scan ng loop at paggawa ng magkasalungat na mga takdang-aralin sa parehong output.
  • Paggawa ng kumplikadong lohika na hindi mabe-verify sa pamamagitan ng pagsusulat nito gamit ang magulo kung-iba sa halip na isang makina ng estado.
  • Pagtanggap sa interpretasyon ng AI sa pamantayan ng seguridad nang hindi ito bini-verify gamit ang opisyal na teksto.

Sa buod

  • Gumagana ang PLC na may tuluy-tuloy na ikot ng pag-scan; Ang mga output ay ina-update sa dulo ng loop.
  • Ang Ladder at Structured Text ay nagpapahayag ng parehong lohika sa dalawang magkaibang IEC 61131-3 na wika.
  • Ang mga pindutan ng Stop/E-stop NC at fail-safe ay konektado; ang kabiguan ay dapat humantong sa ligtas na bahagi.
  • Ang mga lockout ay sinusuri sa bawat ikot ng pag-scan; May kasamang security hardware layer.
  • Ginagawa ng state machine na nababasa at nabe-verify ang kumplikadong logic.
  • Ang pagtatasa ng kaligtasan (ISO 13849/IEC 62061) ay responsibilidad ng inhinyero; Bumubuo ang AI ng draft.

Gawain ng aplikasyon

Pumili ng isang simpleng senaryo ng automation (hal. start/stop self-latch motor, isang two-position actuator, o isang maliit na filling station). Isulat ang iyong listahan ng I/O at mga kinakailangan sa kaligtasan (aling button ang NC, na magkakaugnay). Hayaang bumuo ang AI ng isang Structured Text state machine na may ganitong konteksto. Pagkatapos ay i-verify ang output para sa kaligtasan: (1) ang Stop ba ay nagbibigay ng ligtas na paglabas mula sa bawat estado, (2) ay naka-check ang interlocking sa bawat cycle ng pag-scan, (3) lahat ba ng actuator ay pumupunta sa ligtas na estado kung sakaling magkamali? Itala ang anumang mga kakulangan sa kaligtasan at pagwawasto na makikita mo.