สารบัญ:
- ขั้นตอนที่ 1: Raspberry Pi
- ขั้นตอนที่ 2: TB6600 ไดร์เวอร์ / คอนโทรลเลอร์สเต็ปเปอร์มอเตอร์
- ขั้นตอนที่ 3: สเต็ปเปอร์มอเตอร์…
- ขั้นตอนที่ 4: แหล่งจ่ายไฟและอุปกรณ์จ่ายไฟ
- ขั้นตอนที่ 5: การป้องกันวงจร…
- ขั้นตอนที่ 6: แผนภาพการเดินสายไฟ
- ขั้นตอนที่ 7: การทำงาน
- ขั้นตอนที่ 8: รหัสหลาม
- ขั้นตอนที่ 9: เรื่องย่อ
วีดีโอ: Raspberry Pi, Python และ TB6600 Stepper Motor Driver: 9 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:03
คำแนะนำนี้ทำตามขั้นตอนที่ฉันทำเพื่อเชื่อมต่อ Raspberry Pi 3b กับ TB6600 Stepper Motor Controller, แหล่งจ่ายไฟ 24 VDC และสเต็ปเปอร์มอเตอร์ 6 สาย
ฉันคงเป็นเหมือนพวกคุณหลายๆ คน และบังเอิญมี "ถุงผ้า" ของชิ้นส่วนที่เหลือจากโครงการเก่าๆ มากมาย.. ในคอลเล็กชันของฉัน ฉันมีสเต็ปเปอร์มอเตอร์ 6 สาย และตัดสินใจว่าถึงเวลาต้องเรียนรู้สักหน่อยแล้ว ข้อมูลเพิ่มเติมเกี่ยวกับวิธีที่ฉันสามารถเชื่อมต่อกับ Raspberry Pi รุ่น 3B
ในฐานะที่เป็นข้อจำกัดความรับผิดชอบ ฉันไม่ได้ประดิษฐ์วงล้อที่นี่ ฉันเพียงแค่ดึงข้อมูลจำนวนมากที่พร้อมใช้งานบนเว็บ เพิ่มความเอียงเล็กน้อยของฉันลงไป และพยายามทำให้มันทำงาน
ความตั้งใจที่นี่คือเพียงเพื่อดึงบางสิ่งเข้าด้วยกัน (โดยมีค่าใช้จ่ายน้อยที่สุด) เขียนโค้ด Python สำหรับ Raspberry Pi ของฉันและทำให้มอเตอร์หมุน นี่คือสิ่งที่ผมทำได้สำเร็จ
มาเริ่มกันเลย…
ขั้นตอนที่ 1: Raspberry Pi
สำหรับ Raspberry Pi ฉันใช้หมุด GPIO มาตรฐานสามตัวดังนั้นจึงควรใช้งานได้ (ฉันยังไม่ได้ทดสอบ) กับ Pi หรือกระดานสีส้ม กระดานทิงเกอร์หรือโคลนที่มีอยู่ คุณอาจ (และควร) หวีโค้ด Python ที่แสดงความคิดเห็นมากเกินไปของฉัน และเลือกพิน GPIO อื่น หากคุณใช้โปรเซสเซอร์อื่น หรือเพียงแค่ต้องการเปลี่ยนแปลงเล็กน้อย
โปรดทราบว่าฉันกำลังเชื่อมต่อโดยตรงกับพิน GPIO บน RPi ดังนั้นฉันจึงจำกัดแรงดันไฟฟ้าที่หมุด GPIO เห็นเป็น 3.3 โวลต์
ขั้นตอนที่ 2: TB6600 ไดร์เวอร์ / คอนโทรลเลอร์สเต็ปเปอร์มอเตอร์
ดังที่ฉันได้กล่าวไว้ก่อนหน้านี้ ฉันเลือกใช้ไดรเวอร์ / คอนโทรลเลอร์สเต็ปเปอร์มอเตอร์ TB6600
ตัวควบคุมนี้คือ:
- พร้อมใช้งาน (ค้นหา eBay, Amazon, Ali Express หรืออื่น ๆ อีกมากมาย)
- กำหนดค่าได้มากด้วยสวิตช์เข้าถึงง่าย
- รายละเอียดการกำหนดค่าและสายไฟถูกสกรีนบนเคส
- ช่วงแรงดันไฟฟ้าขาเข้า 9 VDC ถึง 40 VDC
- รองรับเอาต์พุตมอเตอร์ไดรฟ์สูงสุด 4 แอมป์
- มีพัดลมระบายความร้อนภายในและแผ่นระบายความร้อนที่ดี
- มีขั้วต่อแบบถอดได้ 3 ตัว
- มีรอยเท้าเล็กๆ
- ง่ายต่อการติดตั้ง
แต่ต้นทุนต่ำในการซื้อเป็นสิ่งที่ปิดผนึกข้อตกลงนี้จริงๆ
ขั้นตอนที่ 3: สเต็ปเปอร์มอเตอร์…
สเต็ปเปอร์มอเตอร์ที่ฉันใช้ไม่ค่อยมีใครรู้จัก.. ฉันใช้มาหลายปีแล้ว และจำไม่ได้ว่าซื้อมาอย่างไรหรือใช้งานครั้งก่อนเป็นอย่างไร
ในคำแนะนำนี้ ฉันจะไม่อธิบายรายละเอียดวิธีการหาความสามารถของมัน - ฉันไม่ได้ใช้งานจริง (นอกเหนือจากการทดลอง) ดังนั้นฉันจะข้ามไป
ฉันใช้สเต็ปเปอร์มอเตอร์ที่ค่อนข้างธรรมดา ฉันใช้เวลาเล็กน้อยบน YouTube และที่นี่ใน Instructables เพื่อลองถอดรหัสสายที่มาจากมัน
มอเตอร์ของฉันมีสายไฟ 6 เส้น… ในแอปพลิเคชันนี้ ฉันทิ้งสายไฟ "Center Tap" สองเส้นที่หุ้มฉนวนและไม่เชื่อมต่อ
หากคุณมีสเต็ปเปอร์มอเตอร์ประเภท "ทั่วไป" ที่คล้ายคลึงกัน ฉันแน่ใจว่าด้วยโอห์มมิเตอร์และเวลาสักเล็กน้อย คุณก็สามารถคิดหาสายไฟและทำให้มันทำงานในลักษณะนี้ได้เช่นกัน มีวิดีโอ YouTube มากมายที่จะแนะนำคุณในการแยกแยะมอเตอร์ของคุณเอง
ขั้นตอนที่ 4: แหล่งจ่ายไฟและอุปกรณ์จ่ายไฟ
ต้องระวังไว้ตรงนี้…
คุณอาจต้องเชื่อมต่อกับ Line Voltages (ไฟบ้าน) ทั้งนี้ขึ้นอยู่กับโครงสร้างของคุณ อย่าลืมใช้ข้อควรระวังด้านความปลอดภัยที่เหมาะสมทั้งหมด:
- อย่าพยายามเชื่อมต่อไฟฟ้ากับแหล่งพลังงานที่มีชีวิต
- DO ใช้ฟิวส์ขนาดที่เหมาะสมและเบรกเกอร์วงจร
- ใช้สวิตช์เปิดปิดเพื่อจ่ายไฟให้กับ PSU ของคุณ (ซึ่งจะทำให้ง่ายต่อการแยกแหล่งจ่ายไฟออกจากแรงดันไฟฟ้าของสายไฟ)
- DO ถอดสายไฟทั้งหมดอย่างถูกต้องและทำการเชื่อมต่อที่แน่นหนา อย่าใช้คลิปหนีบ หรือสายไฟหลุดลุ่ย หรือขั้วต่อที่ไม่เหมาะสม
- ห้ามใช้เทปของช่างไฟฟ้าเป็นฉนวน
ฉันใช้แหล่งจ่ายไฟ 24 VDC (5 แอมป์) เพื่อจ่ายไฟให้กับตัวควบคุมไดรเวอร์สเต็ปเปอร์มอเตอร์ ฉันยังใช้เอาต์พุตของแหล่งจ่ายไฟเดียวกันนี้เพื่อขับ DC เป็น DC Buck PSU เพื่อสร้าง 3.3 โวลต์เพื่อใช้เป็นแหล่งสัญญาณ ENA, PUL และ DIR (ดูแผนภาพการเดินสายไฟ)
อย่าพยายามใช้ RPi เพื่อดึงกระแสจากแหล่ง 5.0 VDC
ฉันไม่แนะนำให้พยายามหาแหล่งสัญญาณด้าน " + " ของ PUL, DIR และสัญญาณ ENA ด้วย 3.3 VDC จาก RPI
ขั้นตอนที่ 5: การป้องกันวงจร…
โปรดทราบว่าในแผนภาพการเดินสายไฟที่ตามมา ฉันไม่ได้พูดถึงวิธีเชื่อมต่อแหล่งจ่ายไฟกับ "ไฟ AC" หรือแสดงรายการเบรกเกอร์สำหรับมัน หากคุณต้องการสร้างระบบทดสอบในลักษณะนี้ คุณจะต้องใช้เวลาในการระบุ Circuit Breaker และ Fuse ที่จะจับคู่กับแหล่งจ่ายไฟที่คุณจะใช้ อุปกรณ์จ่ายไฟที่ทันสมัยส่วนใหญ่มีข้อกำหนดด้านแรงดันและกระแสไฟที่ระบุไว้ สิ่งเหล่านี้ต้องปฏิบัติตามและติดตั้งระบบป้องกันวงจรที่เหมาะสม
ได้โปรด… อย่าข้ามขั้นตอนสำคัญนี้
ขั้นตอนที่ 6: แผนภาพการเดินสายไฟ
พาวเวอร์ซัพพลาย
เอาต์พุตของแหล่งจ่ายไฟ 24 VDC ถูกหลอมรวมกับฟิวส์ 5 แอมป์ จากนั้นจึงกำหนดเส้นทางไปที่:
- TB6600 Stepper Motor Driver / Controller "VCC" pin (สายสีแดงในแผนภาพ)
- นอกจากนี้ยังถูกส่งไปยังอินพุตของ 3.3 VDC "DC to DC Converter" (อีกครั้งเป็นสายสีแดงในแผนภาพ)
เอาต์พุตของ 3.3 VDC "DC to DC Converter" ถูกส่งไปยังพิน "2", "4" และ "6" ของ TB6600 Stepper Motor Driver / Controller (สายสีน้ำเงินในแผนภาพ)
หมายเหตุ - ตัวควบคุมเองทำเครื่องหมายพินเหล่านี้เป็น "5V".. มันจะทำงานหากจ่ายไฟ 5V ให้กับพินเหล่านั้น แต่เนื่องจากพิกัดแรงดันไฟฟ้าของพิน GPIO บน RPI ฉันจึงเลือกที่จะจำกัดแรงดันไฟฟ้าไว้ที่ 3.3 VDC
หมายเหตุ - ฉันไม่แนะนำให้พยายามหาแหล่งสัญญาณด้าน " + " ของ PUL, DIR และ ENA สัญญาณด้วย 3.3 VDC จาก RPI
การทำแผนที่ GPIO
การทำแผนที่ GPIO GPIO 17 PUL สายสีชมพูในแผนภาพ GPIO27 สาย DIR ORANGE ในแผนภาพ GPIO22 ENA สายสีเขียวในแผนภาพ
ขั้นตอนที่ 7: การทำงาน
โดยทั่วไป ฮาร์ดแวร์ Raspberry Pi จะควบคุมสัญญาณสามสัญญาณ:
การทำแผนที่ GPIO GPIO 17 PUL GPIO27 DIR GPIO22 ENA
GPIO22 - ENA - เปิดหรือปิดการทำงานของไดรเวอร์ / คอนโทรลเลอร์ของ Stepper Motor
เมื่อ LOW ตัวควบคุมจะถูกปิดการใช้งาน ซึ่งหมายความว่าหากสายนี้สูงหรือไม่ได้เชื่อมต่อ TB6600 จะเปิดใช้งาน และหากใช้สัญญาณที่เหมาะสม มอเตอร์จะหมุน
GPIO27 - DIR - กำหนดทิศทางการหมุนของมอเตอร์
เมื่อ HIGH หรือ Not Connected มอเตอร์จะหมุนไปในทิศทางเดียว ในโหมดนี้ หากมอเตอร์ไม่หมุนไปในทิศทางที่คุณต้องการ คุณสามารถสลับสายมอเตอร์ A สองเส้นเข้าด้วยกัน หรือเปลี่ยนสายมอเตอร์ B สองเส้นเข้าหากัน ทำเช่นนี้กับขั้วต่อสีเขียวของ TB6600
เมื่อพินนี้เหลือ LOW TB6600 จะเปลี่ยนทรานซิสเตอร์ภายในและทิศทางของมอเตอร์จะเปลี่ยนไป
GPIO10 - PUL - พัลส์จาก RPI ที่บอกให้ TB6600 Stepper Motor Driver / Controller หมุนเร็วแค่ไหน
โปรดดูภาพที่แนบมาสำหรับการตั้งค่าตำแหน่งสวิตช์ไดรเวอร์ Stepper Motor / Controller ที่ฉันใช้
ขั้นตอนที่ 8: รหัสหลาม
สิ่งที่แนบมาคือรหัสที่แสดงความคิดเห็นมากเกินไปของฉัน
ใช้และแก้ไขได้ตามต้องการ.. ฉันพบบางส่วนของมันบนเว็บ และเพิ่มเพื่อวัตถุประสงค์ในการทดสอบและประเมินผล
== == ==
ขั้นตอนที่ 9: เรื่องย่อ
มันได้ผล.. ยังมีช่องว่างให้ปรับปรุงอีกมาก และสามารถล้างโค้ดได้ แต่ก็โอเค
เรายินดีรับฟังความคิดเห็นของคุณและการเปลี่ยนแปลง/การอัปเดตใดๆ ที่คุณทำ
ขอบคุณ.
แนะนำ:
28BYJ-48 5V Stepper Motor และ A4988 Driver: 4 ขั้นตอน
28BYJ-48 5V Stepper Motor และ A4988 Driver: เคยต้องการให้หุ่นยนต์หมุนในมุมที่แม่นยำโดยใช้ Arduino หรือ micro:bit เพียงเล็กน้อยหรือไม่? ทั้งหมดนี้ราคาถูก ? นั่นคือคำแนะนำสำหรับคุณ ! ในคำแนะนำนี้ เราจะมาดูวิธีการขับสเต็ปเปอร์มอเตอร์ราคาถูกมากโดยใช้เพียง
Stepper Motor ควบคุม Stepper Motor โดยไม่ต้องใช้ไมโครคอนโทรลเลอร์!: 6 ขั้นตอน
สเต็ปเปอร์มอเตอร์ที่ควบคุมโดยสเต็ปเปอร์มอเตอร์ที่ไม่มีไมโครคอนโทรลเลอร์!: ในคำแนะนำอย่างรวดเร็วนี้ เราจะสร้างตัวควบคุมสเต็ปเปอร์มอเตอร์อย่างง่ายโดยใช้สเต็ปเปอร์มอเตอร์ โครงการนี้ไม่ต้องการวงจรที่ซับซ้อนหรือไมโครคอนโทรลเลอร์ เพื่อไม่ให้เป็นการเสียเวลา เรามาเริ่มกันเลย
เครื่องทดสอบ DC และ Stepper Motor: 12 ขั้นตอน (พร้อมรูปภาพ)
เครื่องทดสอบ DC และ Stepper Motor: เมื่อไม่กี่เดือนก่อน เพื่อนคนหนึ่งของฉันได้ให้เครื่องพิมพ์อิงค์เจ็ตและเครื่องถ่ายเอกสารที่ใช้แล้วทิ้งไปสองสามเครื่อง ฉันสนใจที่จะเก็บเกี่ยวหน่วยแหล่งพลังงาน สายเคเบิล เซ็นเซอร์ และโดยเฉพาะมอเตอร์ ฉันกอบกู้สิ่งที่ทำได้และต้องการทดสอบพ่อทั้งหมด
การเลือก Step Motor และ Driver สำหรับ Arduino Automated Shade Screen Project: 12 ขั้นตอน (พร้อมรูปภาพ)
การเลือก Step Motor และ Driver สำหรับ Arduino Automated Shade Screen Project: ในคำแนะนำนี้ ฉันจะทำตามขั้นตอนต่างๆ ที่ฉันทำเพื่อเลือก Step Motor และ Driver สำหรับโครงการ Automated Shade Screen ต้นแบบ ม่านบังแดดเป็นรุ่นมือหมุน Coolaroo ยอดนิยมและราคาไม่แพง และฉันต้องการเปลี่ยนแ
Eagle Hacks / Tricks: ตัวอย่าง TB6600 CNC Mill Stepper Motor Driver: 7 ขั้นตอน
Eagle Hacks/tricks: ตัวอย่าง TB6600 CNC Mill Stepper Motor Driver: นี่เป็นโครงการที่ดีในการแสดงกลเม็ดเล็ก ๆ น้อย ๆ ที่จะทำให้ชีวิตของคุณง่ายขึ้นเมื่อสร้าง PCB เพื่อสอนการแฮ็กสองสามอย่างเพื่อให้คุณได้รับประโยชน์มากขึ้น Eagle ฉันเลือกโครงการง่ายๆ ที่ฉันทำเพื่อ Kickstarter ฉันต้องการภายนอก