สารบัญ:

Raspberry Pi, Python และ TB6600 Stepper Motor Driver: 9 ขั้นตอน
Raspberry Pi, Python และ TB6600 Stepper Motor Driver: 9 ขั้นตอน

วีดีโอ: Raspberry Pi, Python และ TB6600 Stepper Motor Driver: 9 ขั้นตอน

วีดีโอ: Raspberry Pi, Python และ TB6600 Stepper Motor Driver: 9 ขั้นตอน
วีดีโอ: TB6600 Stepper Motor Driver with Arduino 2024, กันยายน
Anonim
Raspberry Pi, Python และ TB6600 Stepper Motor Driver
Raspberry Pi, Python และ TB6600 Stepper Motor Driver

คำแนะนำนี้ทำตามขั้นตอนที่ฉันทำเพื่อเชื่อมต่อ Raspberry Pi 3b กับ TB6600 Stepper Motor Controller, แหล่งจ่ายไฟ 24 VDC และสเต็ปเปอร์มอเตอร์ 6 สาย

ฉันคงเป็นเหมือนพวกคุณหลายๆ คน และบังเอิญมี "ถุงผ้า" ของชิ้นส่วนที่เหลือจากโครงการเก่าๆ มากมาย.. ในคอลเล็กชันของฉัน ฉันมีสเต็ปเปอร์มอเตอร์ 6 สาย และตัดสินใจว่าถึงเวลาต้องเรียนรู้สักหน่อยแล้ว ข้อมูลเพิ่มเติมเกี่ยวกับวิธีที่ฉันสามารถเชื่อมต่อกับ Raspberry Pi รุ่น 3B

ในฐานะที่เป็นข้อจำกัดความรับผิดชอบ ฉันไม่ได้ประดิษฐ์วงล้อที่นี่ ฉันเพียงแค่ดึงข้อมูลจำนวนมากที่พร้อมใช้งานบนเว็บ เพิ่มความเอียงเล็กน้อยของฉันลงไป และพยายามทำให้มันทำงาน

ความตั้งใจที่นี่คือเพียงเพื่อดึงบางสิ่งเข้าด้วยกัน (โดยมีค่าใช้จ่ายน้อยที่สุด) เขียนโค้ด Python สำหรับ Raspberry Pi ของฉันและทำให้มอเตอร์หมุน นี่คือสิ่งที่ผมทำได้สำเร็จ

มาเริ่มกันเลย…

ขั้นตอนที่ 1: Raspberry Pi

ราสเบอร์รี่ Pi
ราสเบอร์รี่ Pi

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

โปรดทราบว่าฉันกำลังเชื่อมต่อโดยตรงกับพิน GPIO บน RPi ดังนั้นฉันจึงจำกัดแรงดันไฟฟ้าที่หมุด GPIO เห็นเป็น 3.3 โวลต์

ขั้นตอนที่ 2: TB6600 ไดร์เวอร์ / คอนโทรลเลอร์สเต็ปเปอร์มอเตอร์

TB6600 ตัวขับ / คอนโทรลเลอร์สเต็ปเปอร์มอเตอร์
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: เรื่องย่อ

มันได้ผล.. ยังมีช่องว่างให้ปรับปรุงอีกมาก และสามารถล้างโค้ดได้ แต่ก็โอเค

เรายินดีรับฟังความคิดเห็นของคุณและการเปลี่ยนแปลง/การอัปเดตใดๆ ที่คุณทำ

ขอบคุณ.

แนะนำ: