หน่วย 8 / 9

ระบบอัตโนมัติ ลอจิก PLC และข้อมูลเซ็นเซอร์/IoT

กำไร:

  • ความสามารถในการแบ่งสถานการณ์อัตโนมัติออกเป็นรายการอินพุต/เอาท์พุตและขั้นตอนลอจิก และขอแบบแลดเดอร์/ST จาก AI
  • ความสามารถในการตรวจสอบลอจิก PLC ที่สร้างโดย AI ในแง่ของการล็อคเพื่อความปลอดภัย การหยุดฉุกเฉิน และสภาพการแข่งขัน
  • ความสามารถในการตรวจสอบการสอบเทียบ ระดับเสียง และสัญญาณความผิดปกติเมื่อตีความเซ็นเซอร์และข้อมูลการวัดและส่งข้อมูลทางไกล IoT ด้วย AI

ระบบอัตโนมัติทางอุตสาหกรรมเป็นหนึ่งในสาขาที่ต้องสัมผัสภาคสนามมากที่สุดในวิศวกรรมไฟฟ้าและอิเล็กทรอนิกส์: PLC (ตัวควบคุมลอจิกแบบตั้งโปรแกรมได้) อ่านสัญญาณจากเซ็นเซอร์และขับเคลื่อนมอเตอร์ วาล์ว และสัญญาณเตือนตามตรรกะบางอย่าง ข้อผิดพลาดเชิงตรรกะที่นี่ไม่ได้เป็นเพียง "เอาต์พุตที่ไม่ถูกต้อง"; สายพานลำเลียงที่ติด วาล์วที่ยังคงเปิดอยู่ หรือการหยุดฉุกเฉินซึ่งไม่ทำงานอาจทำให้เกิดการบาดเจ็บได้จริง AI รวดเร็วในการสรุปตรรกะของระบบอัตโนมัติ แนะนำแลดเดอร์/โค้ด ST และตีความข้อมูลการวัดและส่งข้อมูลทางไกลของเซ็นเซอร์/IoT แต่ระบบล็อคเพื่อความปลอดภัยและการออกแบบระบบป้องกันความผิดพลาดถือเป็นความรับผิดชอบของวิศวกร ในหน่วยนี้ เราจะครอบคลุมวิธีการกำหนดสถานการณ์อัตโนมัติให้กับ AI วิธีควบคุมตรรกะ PLC ที่สร้างขึ้น และวิธีการตีความข้อมูลเซ็นเซอร์อย่างปลอดภัย

การกำหนดค่าสถานการณ์การทำงานอัตโนมัติ: รายการ I/O และขั้นตอนลอจิก

การบอกให้ AI “ตั้งโปรแกรมสายพานลำเลียง” นั้นไม่เพียงพอ ขั้นแรก แยกกระบวนการออกเป็นอินพุต (เซ็นเซอร์ ปุ่ม) เอาต์พุต (มอเตอร์ วาล์ว หลอดไฟ) และขั้นตอนลอจิก ความแตกต่างนี้ทำให้ความกระจ่างแจ้งและทำให้ตรรกะสามารถควบคุมได้

ตัวอย่างรายการ I/O (สถานีเติมแบบธรรมดา):อินพุต: I0.0 ปุ่มเริ่ม, I0.1 ปุ่มหยุด, I0.2 E-stop (NC), I0.3 เซ็นเซอร์ตรวจจับขวด, I0.4 เซ็นเซอร์ตรวจจับการเข้าใช้เอาต์พุต: Q0.0 มอเตอร์สายพานลำเลียง, วาล์วเติม Q0.1, หลอดข้อผิดพลาด Q0.2 ขั้นตอนลอจิก:1) อนุญาตให้ดำเนินการหากไม่ได้กด E-stop และระบบพร้อม2) สายพานลำเลียงพร้อมสตาร์ทกลับ; หยุดสายพานลำเลียงเมื่อเซ็นเซอร์ขวดถูกกระตุ้น3) เปิดวาล์วเติม; ปิดวาล์วเมื่อเซ็นเซอร์ตรวจจับการใช้งานเต็ม 4) รีสตาร์ทสายพานลำเลียง กระบวนการนี้เกิดขึ้นซ้ำๆ 5) E-stop หรือ Stop นำทางออกทั้งหมดไปยังฝั่งปลอดภัยได้ตลอดเวลา

พรอมต์ที่อ่อนแอ / พรอมต์ที่แข็งแกร่ง

อ่อนแอ:"เขียนโค้ด PLC สำหรับสายพานลำเลียง" (ผลลัพธ์: ที่อยู่ I/O, อินเตอร์ล็อคเพื่อความปลอดภัย และตรรกะสถานะไม่ชัดเจน รหัสที่ไม่สมบูรณ์ที่อาจเป็นอันตราย) แข็งแรง: "แนะนำแบบร่างลอจิก PLC (ข้อความที่มีโครงสร้าง) สำหรับสถานีเติมน้ำมันตามรายการ I/O และขั้นตอนลอจิกข้างต้น ตรวจสอบ:- E-stop ได้รับการตั้งค่าด้วยลอจิกแบบปิดตามปกติ (NC) และเป็นเงื่อนไขสำคัญที่ทำให้เอาต์พุตทั้งหมดอยู่ในด้านที่ปลอดภัย- สายพานลำเลียงและ วาล์ว “อย่าสร้างสถานการณ์อันตรายพร้อมกัน (ล็อค) - แสดงความคิดเห็นในแต่ละขั้นตอน ระบุว่านี่เป็นฉบับร่าง ห่วงโซ่ความปลอดภัย ระบบป้องกันความผิดพลาด และการทดสอบภาคสนามเป็นของวิศวกร"

การควบคุมลอจิก PLC: ความปลอดภัย ไม่ผิดพลาด สภาพการแข่งขัน

ตรรกะที่ "ดูเหมือนจะได้ผล" ยังไม่เพียงพอ ทำตามรายการตรวจสอบนี้:

การควบคุม

สิ่งที่ต้องมองหา

หยุดฉุกเฉิน

หน้าสัมผัส NC, ป้องกันข้อผิดพลาด, มีลำดับความสำคัญสูงสุด, สลับเอาต์พุตทั้งหมดไปทางด้านที่ปลอดภัย

ลูกโซ่

เอาต์พุตที่ขัดแย้งกันไม่ควรทำงานพร้อมกัน

สภาพการแข่งขัน

การมอบหมายงานขัดแย้งกันในวงจรเดียวกัน สถานการณ์ไม่แน่นอน

สถานะเริ่มต้น

เริ่มต้นในสถานะที่ปลอดภัยและเป็นที่รู้จักเมื่อมีพลังงาน

จับเวลา/เคาน์เตอร์

ตรรกะที่ถูกต้อง โอเวอร์โฟลว์ รีเซ็ตเงื่อนไข

เซ็นเซอร์ทำงานผิดปกติ

พฤติกรรมที่ปลอดภัยในกรณีที่เซ็นเซอร์ขาด/ลัดวงจร

การหยุดฉุกเฉิน (E-stop) เป็นจุดวิกฤตที่สุด ฟังก์ชันความปลอดภัยจะต้องไม่เกิดข้อผิดพลาด กล่าวคือ หากสายเคเบิลขาด หน้าสัมผัสล้มเหลว ระบบจะต้องตกลงไปในด้านที่ปลอดภัย ซึ่งไม่เป็นอันตราย ดังนั้น E-stop จึงถูกสร้างขึ้นโดยมีหน้าสัมผัสแบบปิดตามปกติ (NC) หากสายเคเบิลขาด วงจรจะเปิดและระบบจะหยุดทำงาน นอกจากนี้ตรรกะของซอฟต์แวร์เพียงอย่างเดียวยังไม่เพียงพอ ห่วงโซ่ความปลอดภัยของฮาร์ดแวร์ (รีเลย์นิรภัย/คอนแทคเตอร์) ต้องได้รับการออกแบบและตรวจสอบโดยวิศวกร

คำเตือน: หากคุณเห็นในรหัสแลดเดอร์/ST ที่สร้างโดย AI ว่า E-stop ถูกตั้งค่าด้วยหน้าสัมผัสแบบเปิดตามปกติ (NO) หรือเพียงแฟล็กซอฟต์แวร์ แสดงว่ามีช่องโหว่ ฟังก์ชันความปลอดภัยไม่เคยปล่อยให้ซอฟต์แวร์อยู่คนเดียว ห่วงโซ่ฮาร์ดแวร์ที่ปลอดภัยเมื่อเกิดเหตุขัดข้องและการปฏิบัติตามมาตรฐานความปลอดภัยของเครื่องจักรที่เกี่ยวข้องเป็นความรับผิดชอบของวิศวกร และได้รับการตรวจสอบโดยการทดสอบภาคสนาม

สภาพการแข่งขันและเครื่องจักรของรัฐ

ตรรกะ PLC ทำงานเป็นวงกลม ตรรกะทั้งหมดได้รับการประมวลผลตั้งแต่ต้นจนจบในแต่ละรอบ บางครั้ง AI จะเขียนบรรทัดที่ขัดแย้งกันซึ่งกำหนดเอาต์พุตเดียวกันไว้ในที่เดียวและรีเซ็ตในอีกที่หนึ่ง ส่งผลให้เอาต์พุตกะพริบอย่างคาดเดาไม่ได้ (สภาพการแข่งขัน) การสร้างกระบวนการที่ซับซ้อนในฐานะเครื่องควบคุมสถานะที่ชัดเจนจะช่วยลดความเสี่ยงนี้: ระบบจะอยู่ในสถานะเดียวที่เฉพาะเจาะจงตลอดเวลา โดยการเปลี่ยนแปลงจะขึ้นอยู่กับเงื่อนไขที่ชัดเจน

การตีความเซ็นเซอร์และข้อมูล IoT: การสอบเทียบ หน่วย สัญญาณความผิดปกติ

แม้ว่าข้อมูลเซนเซอร์และการวัดและส่งข้อมูลทางไกล IoT (อุณหภูมิ ความดัน การสั่นสะเทือน กระแสไฟฟ้า) มีประโยชน์สำหรับการวิเคราะห์ แต่ข้อมูลดิบก็อาจทำให้เข้าใจผิดได้ เมื่อ AI สรุปข้อมูลนี้ คุณต้องตรวจสอบสามสิ่ง:

  1. การสอบเทียบและมาตราส่วน เซ็นเซอร์ส่งออกค่า ADC ดิบหรือหน่วยทางกายภาพจริงหรือไม่ AI 4-20 mA สามารถปรับขนาดเซ็นเซอร์ไม่ถูกต้อง และสร้างความสับสนให้กับค่าทางกายภาพ
  2. หน่วย. °C หรือ °F, บาร์หรือ kPa, RMS หรือจุดสูงสุด? ความสับสนในแต่ละหน่วยจะทำลายการตีความทั้งหมด
  3. สัญญาณความผิดปกติ ค่าที่ติดอยู่ ลดลงอย่างฉับพลันเป็นศูนย์ การอ่านอยู่นอกช่วง สิ่งเหล่านี้ไม่ใช่การวัดจริง แต่อาจเป็นความผิดปกติของเซ็นเซอร์/เส้น หาก AI ตีความสิ่งเหล่านี้ว่าเป็น “ข้อมูลที่น่าสนใจ” คุณจะคิดผิด

# เซ็นเซอร์ 4-20 mA -> การปรับขนาดค่าทางกายภาพ (ช่วง 0-100 °C) def ma_to_temp(ma): ถ้า ma < 3.5: # ต่ำกว่า 4 mA -> เส้นขาด/การส่งคืนข้อผิดพลาดไม่มี # ทำเครื่องหมายเป็นการส่งคืนที่ไม่ถูกต้อง (ma - 4.0) / (20.0 - 4.0) * 100.0 สำหรับการอ่านใน [4.0, 12.0, 20.0, 2.0]: t = ma_to_temp(reading) print(reading, "mA ->", "FAULT" if t is None else f"{t:.1f} C")

เคล็ดลับ: เมื่อตีความข้อมูล IoT ก่อนอื่นให้ถามว่า "ค่านี้เป็นไปได้ทางกายภาพหรือไม่" ถามคำถาม. หากเซ็นเซอร์อุณหภูมิห้องอ่านค่าได้ 300 °C สิ่งนี้ไม่จริง อาจเป็นเพราะข้อผิดพลาดในการสอบเทียบ/เส้น กำจัดสัญญาณข้อผิดพลาดก่อนการตีความของ AI

มินิเคส

วิศวกรบำรุงรักษาให้ AI ตีความข้อมูลการสั่นสะเทือน IoT ของปั๊ม AI บอกว่า "การสั่นสะเทือนเพิ่มขึ้น 200% ในสัปดาห์ที่แล้ว เสี่ยงต่อความล้มเหลวในทันที" และเสนอแนะสัญญาณเตือน วิศวกรดูข้อมูลดิบ: ค่าจะ "ติดอยู่" ที่ตัวเลขสูงคงที่หลังจากช่วงระยะเวลาหนึ่ง โดยไม่เคยเปลี่ยนแปลง นี่ไม่ใช่การสั่นสะเทือนที่เพิ่มขึ้น แต่เป็นเซ็นเซอร์ค้าง/ทำงานล้มเหลว ในการพังทลายทางกลอย่างแท้จริง ค่าจะผันผวน วิศวกรตรวจสอบเซ็นเซอร์ การเชื่อมต่อสายเคเบิลหลวม AI ตีความค่าคงที่ว่าเป็น "กระทิง" บทเรียน: แยกแยะลายเซ็นข้อผิดพลาด (ติดอยู่ อยู่นอกระยะ การสปัตเตอร์) ก่อนที่จะตีความข้อมูลเซ็นเซอร์ AI ไม่ค้นหาข้อมูลดิบ

ข้อผิดพลาดทั่วไป

  • การตั้งค่า E-stop โดยไม่มีการสัมผัสหรือตั้งค่าสถานะซอฟต์แวร์เท่านั้น (ไม่ปลอดภัยเมื่อเกิดข้อผิดพลาด)
  • ปล่อยให้ฟังก์ชันความปลอดภัยเป็นหน้าที่ของซอฟต์แวร์เพียงอย่างเดียว โดยไม่มีห่วงโซ่ฮาร์ดแวร์
  • การสร้างสภาวะการแข่งขันด้วยเส้นเซ็ต/รีเซ็ตที่ขัดแย้งกัน
  • ไม่ได้กำหนดสถานะเริ่มต้นที่ปลอดภัยเมื่อรวมพลัง
  • การตีความข้อมูลเซ็นเซอร์จากการสอบเทียบและการตรวจสอบหน่วย
  • สัญญาณข้อผิดพลาดที่ผิดพลาด (ติดอยู่ อยู่นอกช่วง) สำหรับการวัดจริง

โดยสรุป

  • แบ่งสถานการณ์ระบบอัตโนมัติออกเป็นรายการ I/O และล้างขั้นตอนลอจิก และถาม AI ด้วยวิธีนั้น
  • ฟังก์ชัน E-stop และความปลอดภัยจะต้องไม่เกิดข้อผิดพลาด (NC) มีลำดับความสำคัญสูงสุดและเชื่อมต่อฮาร์ดแวร์ไว้ ตรวจสอบโดยการทดสอบภาคสนาม
  • การมอบหมายงานที่ขัดแย้งกันทำให้เกิดสภาพการแข่งขัน ตั้งค่ากระบวนการที่ซับซ้อนด้วยเครื่องสถานะ
  • การรักษาความปลอดภัยไม่เคยปล่อยให้ซอฟต์แวร์อยู่คนเดียว ต้องได้รับการอนุมัติจากวิศวกร
  • สัญญาณการสอบเทียบ หน่วย และความผิดปกติในข้อมูลเซ็นเซอร์/IoT จะได้รับการตรวจสอบก่อน
  • ค่าที่เป็นไปไม่ได้ทางกายภาพและการอ่านที่ค้างอยู่เป็นสัญญาณของความผิดปกติ ไม่ใช่ข้อมูลจริง

งานสมัคร

เขียนรายการ I/O และขั้นตอนลอจิกสำหรับสถานการณ์ระบบอัตโนมัติอย่างง่าย (การเติม การควบคุมเกต การปรับระดับ) ถาม AI สำหรับร่าง ST/บันได จากนั้นตรวจสอบตรรกะที่สร้างขึ้น: (1) E-stop ปลอดภัยเมื่อล้มเหลวและได้รับการจัดลำดับความสำคัญหรือไม่ (2) มีการล็อคสำหรับเอาต์พุตที่ขัดแย้งกัน (3) กำหนดการเริ่มต้นอย่างปลอดภัยเมื่อเปิดเครื่องหรือไม่? แยกกัน ขอความคิดเห็นจาก AI เกี่ยวกับชุดการอ่านเซ็นเซอร์ (ค่าปกติหลายค่า ค่าค้างค่าหนึ่ง ค่าอยู่นอกช่วง) และตรวจสอบว่าได้กำจัดค่าความผิดพลาดอย่างถูกต้อง แก้ไขข้อผิดพลาดและจดบันทึกไว้