สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12
สัปดาห์ที่แล้ว ฉันขอให้สร้างระบบเพื่อขับดอกไม้ไฟด้วย Arduino มันต้องการประมาณ 64 เอาต์พุตเพื่อควบคุมไฟ วิธีหนึ่งที่ทำได้คือการใช้ตัวขยาย IC มี 2 โซลูชั่นให้เลือก:
- ตัวขยาย I2C แต่ต้องใช้อินเวอร์เตอร์เมื่อคุณเปิด IC (ดูคำสั่งก่อนหน้าของฉันบนเครื่องสถานะ จำกัด) เพราะเอาต์พุตทั้งหมดเปิดและปิดอย่างรวดเร็ว: ปัญหากับดอกไม้ไฟ
-SPI ยังใช้งานง่ายและไม่มีปัญหาในการเปิดเครื่อง
ดังนั้นฉันจึงตัดสินใจศึกษาตัวขยายประเภทนี้ ฉันยังใช้เครื่องสถานะที่มีการทำงานหลายอย่างพร้อมกันเพื่อควบคุม 16 I/O แบบดิจิตอลและ 2 เอาต์พุตแบบอะนาล็อก การ์ดใบนี้ออกแบบมาเพื่อควบคุมระบบอัตโนมัติ เช่น PLC
ฉันยังศึกษาความแตกต่างและการแปลระหว่างภาพวาดของไดอะแกรมสถานะและกราฟอีกอันที่ใช้ในระบบอัตโนมัติ: SFC (Sequential Function Chart) ตาม Petri nets เดิม
th.wikipedia.org/wiki/Sequential_function_…
fr.wikipedia.org/wiki/Grafcet
ขั้นตอนที่ 1: การ์ดและวงจร
ฉันใช้ Arduino uno และชิป DIL 2 ประเภท:
- MCP23S17 ตัวขยายสัญญาณ I/O 2 x 16 ที่ควบคุมด้วย SPI
-MCP4921, DAC 12 บิต, 0/5V
IC เหล่านี้มีราคาถูกและเชื่อถือได้ และยังเชื่อมโยงและตั้งโปรแกรมได้ง่ายมาก ในแผนผังฉันใช้ส่วนประกอบเพิ่มเติมบางอย่าง เช่น ตัวเก็บประจุแบบแยกส่วน ตัวต้านทานแบบดึงลงสำหรับอินพุต
ขั้นตอนที่ 2: โปรแกรมเรียกใช้เครื่องสถานะมัลติทาสก์
แนวคิดระดับโลกคือการควบคุม I/O แบบดิจิทัล และในขณะเดียวกันก็เปิดใช้เอฟเฟกต์เปิด/ปิดแบบเฟดบน LEDS ที่เชื่อมต่อกับเอาท์พุตแอนะล็อกทั้งสอง
อีกสิ่งหนึ่งฉันทำโดยมีวัตถุประสงค์เพื่อเชื่อมต่อหมุด CS แยกต่างหาก (การเลือกชิป) เพื่อให้มีความเป็นไปได้มากขึ้นใน IC เพิ่มเติมบนบัส SPI ดังนั้นฉันจึงใช้:
- ห้องสมุดพิเศษสำหรับเครื่องรัฐ
- ห้องสมุดพิเศษสำหรับ MCP23S17
- ไม่มีไลบรารีพิเศษสำหรับ MCP4921, CS และซอฟต์การเชื่อมต่อ SPI นั้น "สะดวก" เสร็จแล้ว
คุณสามารถเห็นภาพการแปลระหว่างเครื่องสถานะที่คาดหวังและ SFC (เรียกอีกอย่างว่า GRAFCET หรือ gr7 ในภาษาฝรั่งเศส) คำศัพท์ทั่วไปบางคำ: สถานะพร้อมกัน มัลติทาสก์ และการห่อหุ้ม
ฉันให้ความคิดเห็นมากมายแก่ไลบรารีและซอร์สโค้ด หากต้องการอ่านและทำความเข้าใจ คุณต้องอ่านแผนภาพสถานะหรือ SFC พร้อมกัน
ขั้นตอนที่ 3: เพื่อสรุป
มันได้ผล!!
เมื่อคุณเปิดเครื่อง คุณต้องรอสองสามวินาทีแล้วใช้ตัวขยาย (เวลาเริ่มต้นบัส SPI)
ระบบมีปฏิกิริยาที่รวดเร็วมาก และคุณจำเป็นต้องสร้างการ์ดอินเทอร์เฟซสำหรับพลังงาน หากคุณต้องการควบคุมเครื่องใดก็ตาม ดูคำแนะนำก่อนหน้าของฉัน มันง่ายมาก!!
ขอบคุณบทเรียนที่น่าสนใจและใช้งานได้ทั่วโลก
มนู4371.
แนะนำ:
วิธีการตั้งค่า OSMC ด้วย Hyperion บน Raspberry Pi ด้วย WS2812b Led Strip: 8 ขั้นตอน
วิธีการตั้งค่า OSMC ด้วย Hyperion บน Raspberry Pi ด้วย WS2812b Led Strip: บางครั้งฉันพูดภาษาอังกฤษได้ดีมาก บางครั้งก็ไม่มี… สิ่งแรกเลย นี่เป็นการสอนครั้งแรกของฉันและภาษาอังกฤษไม่ใช่ภาษาแม่ของฉัน ดังนั้นโปรดอย่ากดดันฉันมากเกินไป นี่จะไม่เกี่ยวกับวิธีการสร้างเฟรมที่ง่าย มันเกี่ยวกับการติดตั้ง
Blinds Control ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: 5 ขั้นตอน (พร้อมรูปภาพ)
การควบคุมมู่ลี่ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: ในคำแนะนำนี้ ฉันจะแสดงให้คุณเห็นว่าฉันเพิ่มระบบอัตโนมัติให้กับมู่ลี่ของฉันอย่างไร ฉันต้องการเพิ่มและลบระบบอัตโนมัติได้ ดังนั้นการติดตั้งทั้งหมดจึงเป็นแบบหนีบ ส่วนหลักคือ: สเต็ปเปอร์มอเตอร์ ตัวขับสเต็ปควบคุม bij ESP-01 เกียร์และการติดตั้ง
DIY IBeacon และ Beacon Scanner ด้วย Raspberry Pi และ HM13: 3 ขั้นตอน
DIY IBeacon และ Beacon Scanner ด้วย Raspberry Pi และ HM13: Story A beacon จะส่งสัญญาณอย่างต่อเนื่องเพื่อให้อุปกรณ์บลูทู ธ อื่น ๆ รู้ว่ามีอยู่ และฉันอยากได้บีคอนบลูทูธเพื่อติดตามกุญแจมาตลอด เพราะฉันลืมเอามันมาเหมือน 10 ครั้งในปีที่แล้ว และฉันก็เกิดขึ้น
วิธีควบคุมหลอดไฟโดยใช้ Arduino UNO และ Single Channel 5V Solid State Relay Module: 3 ขั้นตอน
วิธีควบคุมหลอดไฟโดยใช้ Arduino UNO และโมดูลโซลิดสเตตรีเลย์ 5V แบบช่องสัญญาณเดี่ยว: คำอธิบาย:เมื่อเปรียบเทียบกับรีเลย์ทางกลแบบเดิม Solid State Relay (SSR) มีข้อดีหลายประการ: มีอายุการใช้งานยาวนานขึ้นด้วยการเปิด/ปิดที่สูงกว่ามาก ปิดความเร็วและไม่มีเสียงรบกวน นอกจากนี้ยังมีความทนทานต่อแรงสั่นสะเทือนและกลไกที่ดีกว่า
วิธีสร้าง CubeSat ด้วย Arduino ด้วย Arducam: 9 ขั้นตอน
วิธีสร้าง CubeSat ด้วย Arduino ด้วย Arducam: ในรูปแรก เรามี Arduino และเรียกว่า "Arduino Uno"ในรูปที่สอง เรามี Arducam และเรียกว่า "Arducam OV2640 มินิ 2MP"พร้อมกับภาพที่สอง มีวัสดุที่คุณต้อง