หากคุณเคยมีความสุขที่ได้รื้อเครื่องพิมพ์เก่าเพื่อประหยัด อิเล็กทรอนิกส์ ส่วนประกอบคุณอาจพบมอเตอร์ลึกลับทรงกระบอกจำนวนมากที่มีสายไฟ 4 เส้นขึ้นไปยื่นออกมาจากด้านข้าง คุณเคยได้ยินข่าวลือทั่วไปของเครื่องพิมพ์ 3D บนเดสก์ท็อปหรือระบบไฟฟ้าเชิงกล buggy ของดิสก์ในไดรฟ์ซีดี ถ้าเป็นเช่นนั้นคุณต้องเผชิญกับสเต็ปเปอร์มอเตอร์!
มอเตอร์สเต็ปเปอร์ทำให้โลกหมุนด้วยไฟฟ้า (ด้วยแรงบิดที่สูงกว่า!) แต่ต่างจากมอเตอร์ DC ทั่วไปการควบคุมสเต็ปเปอร์มอเตอร์ต้องการกระแสมากกว่าสองสาย บทความนี้จะพูดถึงทฤษฎีของการออกแบบและการทำงานของสเต็ปเปอร์มอเตอร์ ทันทีที่เราพิจารณาพื้นฐานผู้เขียนคู่มือนี้จะแสดงวิธีการสร้างวงจรอย่างง่ายสำหรับการควบคุมสเต็ปเปอร์มอเตอร์และจากนั้นจะใช้วงจรขับพิเศษ
ขั้นตอนที่ 1: อะไรทำให้มอเตอร์เป็นสเต็ปเปอร์มอเตอร์?
ใครที่อาจต้องการมากกว่าสองสายและ H-bridge? ทำไม? ซึ่งแตกต่างจากมอเตอร์แปรง DC ทั่วไปที่สร้างขึ้นสำหรับ RPM สูงสุด (หรือ kV สำหรับ RC), มอเตอร์ชนิดสเต็ปปิ้งเป็นมอเตอร์แบบไร้แปรงที่ออกแบบมาสำหรับแรงบิดสูง (ความเร็วต่ำลงในภายหลัง) และการเคลื่อนไหวแบบหมุนที่แม่นยำยิ่งขึ้น ในขณะที่มอเตอร์ DC ทั่วไปนั้นยอดเยี่ยมสำหรับการหมุนใบพัดด้วยความเร็วสูงเพื่อให้ได้แรงดึงสูงสุด แต่มอเตอร์สเต็ปจะดีกว่าสำหรับการม้วนกระดาษให้สอดคล้องกับกลไกอิงค์เจ็ทภายในเครื่องพิมพ์หรือหมุนเพลารางเชิงเส้นในโรงสีซีเอ็นซีอย่างระมัดระวัง
ภายในสเต็ปเปอร์มอเตอร์นั้นซับซ้อนกว่ามอเตอร์ DC ทั่วไปโดยมีขดลวดหลายรอบแกนแม่เหล็กถาวร แต่ด้วยความซับซ้อนที่เพิ่มขึ้นนี้ทำให้มีการควบคุมมากขึ้น เนื่องจากการจัดเรียงอย่างระมัดระวังของขดลวดที่สร้างขึ้นในสเตเตอร์ใบพัดของมอเตอร์สเต็ปสามารถหมุนได้ด้วยขั้นตอนที่กำหนดเปลี่ยนขั้วระหว่างขดลวดและสลับขั้วตามแผนการจุดระเบิดที่กำหนดไว้ มอเตอร์สเต็ปเปอร์นั้นไม่ได้มีลักษณะเหมือนกันทั้งหมดและจำเป็นต้องมีรูปแบบการดำเนินการภายในที่เป็นเอกลักษณ์ (แต่พื้นฐาน) เราจะพูดถึงสเต็ปเปอร์มอเตอร์ที่ใช้กันทั่วไปในขั้นตอนต่อไป
ขั้นตอนที่ 2: ประเภทของสเต็ปเปอร์มอเตอร์
มอเตอร์สเต็ปมีหลายแบบ เหล่านี้รวมถึง unipolar, bipolar, universal และ variable resistance เราจะหารือเกี่ยวกับการออกแบบและการใช้งานของมอเตอร์แบบสองขั้วและแบบ unipolar เนื่องจากเป็นมอเตอร์ที่ใช้กันทั่วไปมากที่สุด
มอเตอร์ Unipolar
มอเตอร์ Unipolar มักจะมีสายตะกั่วห้า, หกหรือแปดสายมาจากฐานและหนึ่งขดลวดต่อเฟส ในกรณีของมอเตอร์ห้าสายลวดห้าคือก๊อกกลางที่เชื่อมต่อของคู่คอยส์ ในเครื่องยนต์หกสายขดลวดแต่ละคู่มีก๊อกส่วนกลางของตัวเอง ในเครื่องยนต์แบบแปดสายขดลวดแต่ละคู่แยกจากกันโดยสิ้นเชิงซึ่งทำให้สามารถเชื่อมต่อในการกำหนดค่าต่างๆ สายเพิ่มเติมเหล่านี้ช่วยให้คุณสามารถขับมอเตอร์ unipolar โดยตรงจากคอนโทรลเลอร์ภายนอกด้วยทรานซิสเตอร์ง่าย ๆ เพื่อควบคุมแต่ละขดลวดแยกกัน วงจรจุดระเบิดที่แต่ละขดลวดขับเคลื่อนจะกำหนดทิศทางการหมุนของเพลามอเตอร์ น่าเสียดายที่มีเพียงขดลวดเพียงครั้งเดียวเท่านั้นที่ให้แรงบิดในการถือมอเตอร์ unipolar จะน้อยกว่ามอเตอร์ไบโพลาร์ที่มีขนาดเท่ากันเสมอ ผ่านเซ็นทรัลก๊อกของมอเตอร์ unipolar ตอนนี้มันสามารถทำงานเป็นมอเตอร์ไบโพลาร์ได้ แต่จะต้องใช้รูปแบบการควบคุมที่ซับซ้อนมากขึ้น ในขั้นตอนที่สี่ของบทความนี้เราจะขับมอเตอร์ unipolar ซึ่งควรชี้แจงแนวคิดบางอย่างที่นำเสนอข้างต้น
มอเตอร์สองขั้ว
โดยทั่วไปแล้วมอเตอร์แบบไบโพลาร์จะมีสี่สายและมีความทนทานมากกว่ามอเตอร์แบบ unipolar ที่มีขนาดเปรียบเทียบ แต่เนื่องจากเรามีเพียงหนึ่งขดลวดต่อเฟสเราจึงจำเป็นต้องหมุนกระแสผ่านขดลวดเพื่อไปหนึ่งก้าว ความต้องการของเราในการเปลี่ยนกระแสไฟฟ้าหมายความว่าเราจะไม่สามารถควบคุมคอยส์โดยตรงด้วยทรานซิสเตอร์ตัวเดียวแทนวงจร h-bridge ที่สมบูรณ์ การสร้างสะพาน h ขวานั้นน่าเบื่อ (ไม่พูดถึงสอง!) ดังนั้นเราจะใช้ไดรเวอร์มอเตอร์สองขั้วเฉพาะ (ดูขั้นตอนที่ 5)
ขั้นตอนที่ 3: ทำความเข้าใจข้อมูลจำเพาะของสเต็ปเปอร์มอเตอร์
เรามาพูดถึงวิธีการกำหนดคุณสมบัติของเครื่องยนต์ หากคุณเจอกับเครื่องยนต์แบบสี่เหลี่ยมด้วยชุดประกอบสามชิ้นที่เฉพาะเจาะจง (ดูรูปที่สาม) ก็น่าจะเป็นกลไก NEMA สมาคมผู้ผลิตไฟฟ้าแห่งชาติมีมาตรฐานเฉพาะสำหรับข้อมูลจำเพาะของมอเตอร์ที่ใช้รหัสตัวอักษรอย่างง่ายเพื่อกำหนดเส้นผ่านศูนย์กลางของแผ่นปิดมอเตอร์ชนิดของเมาท์ความยาวกระแสเฟสอุณหภูมิในการทำงานแรงดันเฟสขั้นตอนต่อการปฏิวัติและการเดินสาย
อ่านหนังสือเดินทาง
สำหรับขั้นตอนต่อไปมอเตอร์ unipolar นี้จะถูกใช้ ด้านบนเป็นตารางข้อมูล และถึงแม้จะกระชับ แต่ก็ให้ทุกสิ่งที่เราต้องการสำหรับการทำงานที่เหมาะสม ลองดูสิ่งที่อยู่ในรายการ:
ระยะ: นี่คือมอเตอร์ unipolar สี่เฟส เอ็นจิ้นภายในสามารถมีคอยส์จำนวนเท่าใดก็ได้ แต่ในกรณีนี้พวกมันถูกแบ่งออกเป็นสี่เฟสซึ่งสามารถควบคุมได้อย่างอิสระ
มุมพิตช์: ด้วยความละเอียดประมาณ 1.8 องศาต่อขั้นตอนเราได้ 200 ขั้นต่อการปฏิวัติ แม้ว่านี่จะเป็นความละเอียดเชิงกลด้วยความช่วยเหลือของทางแยกขนาดเล็กเราสามารถเพิ่มความละเอียดนี้โดยไม่มีการเปลี่ยนแปลงใด ๆ กับเครื่องยนต์ (เพิ่มเติมเกี่ยวกับเรื่องนี้ในขั้นตอนที่ 5)
แรงดันไฟฟ้า: แรงดันไฟฟ้าที่กำหนดของมอเตอร์นี้คือ 3 โวลต์ นี่คือฟังก์ชั่นของกระแสและความต้านทานเล็กน้อยของมอเตอร์ (กฎของโอห์ม V = IR ดังนั้น 3V = 2A * 1.5Ω)
ปัจจุบัน: มอเตอร์นี้ต้องการกระแสไฟฟ้าเท่าไร สองแอมแปร์ต่อเฟส! รูปนี้จะมีความสำคัญเมื่อเลือกทรานซิสเตอร์กำลังของเราสำหรับวงจรควบคุมพื้นฐาน
ความต้านทาน: 1.5 โอห์มต่อเฟสจะ จำกัด กระแสที่เราสามารถจัดหาให้ในแต่ละเฟส
การเหนี่ยวนำ: 2.5 mH ธรรมชาติอุปนัยของมอเตอร์คอยส์ จำกัด ความเร็วในการชาร์จของคอยส์
เดี๋ยวค้างไว้: นี่คือแรงที่เกิดขึ้นจริงที่เราสามารถสร้างได้เมื่อมีการใช้แรงดันไฟฟ้ากับมอเตอร์
เดี๋ยวโฮลดิ้ง: นี่คือช่วงเวลาการถือครองที่เราสามารถคาดหวังได้จากเครื่องยนต์เมื่อไม่ได้รับพลังงาน
ชั้นฉนวน: คลาส B เป็นส่วนหนึ่งของมาตรฐาน NEMA และให้คะแนนที่ 130 องศาเซลเซียส มอเตอร์สเต็ปเปอร์ไม่มีประสิทธิภาพมากและการบริโภคกระแสคงที่สูงสุดหมายความว่าจะร้อนมากในระหว่างการทำงานปกติ
ตัวบ่งชี้การม้วน: เส้นผ่านศูนย์กลางของลวด 0.644 มม., จำนวนการเลี้ยวในเส้นผ่าศูนย์กลาง 15.5, ส่วนตัด 0.326 มม. 2
การตรวจจับคู่คอยล์
แม้ว่าความต้านทานของขดลวดอาจแตกต่างกันไปในแต่ละมอเตอร์หากคุณมีมัลติมิเตอร์คุณสามารถวัดความต้านทานของลวดสองเส้นใดก็ได้หากความต้านทานน้อยกว่า 10 โอห์มคุณอาจพบว่ามีคู่! นี่เป็นกระบวนการข้อผิดพลาดในการทดลองใช้ แต่ควรทำงานกับเอ็นจิ้นส่วนใหญ่ยกเว้นว่าคุณมีหมายเลขชิ้นส่วน / ข้อมูลจำเพาะ
ขั้นตอนที่ 4: การควบคุมมอเตอร์สเต็ปโดยตรง
เนื่องจากที่ตั้งของสายไฟในมอเตอร์ยูนิโพลาร์เราสามารถเปิดขดลวดตามลำดับโดยใช้มอสเฟตพลังงานอย่างง่ายเท่านั้น รูปด้านบนแสดงวงจรที่เรียบง่ายพร้อมทรานซิสเตอร์ MOS การจัดเรียงนี้ช่วยให้คุณสามารถควบคุมระดับตรรกะโดยใช้ไมโครคอนโทรลเลอร์ภายนอก ในกรณีนี้วิธีที่ง่ายที่สุดคือใช้บอร์ด Intel Edison กับบอร์ดแพทช์ตามสไตล์ Arduinoเพื่อให้สามารถเข้าถึง GPIO ได้ง่าย (อย่างไรก็ตามไมโครใด ๆ ที่มีสี่ GPIO จะทำ) MOSFET กำลังแรงสูง IRF510 N-channel ใช้สำหรับวงจรนี้ IRF510 มีความสามารถในการบริโภคสูงถึง 5.6 แอมป์จะมีพลังงานเพียงพอที่จะตอบสนองความต้องการของมอเตอร์ที่ 2 แอมป์ ไฟ LED ไม่จำเป็น แต่พวกเขาจะให้ภาพที่ดีในการยืนยันลำดับของงาน สิ่งสำคัญคือต้องทราบว่า IRF510 จะต้องมีระดับตรรกะอย่างน้อย 5 V เพื่อให้สามารถใช้กระแสไฟฟ้าที่เพียงพอสำหรับมอเตอร์ กำลังของเครื่องยนต์ในวงจรนี้คือ 3 V
ลำดับการทำงาน
การควบคุมมอเตอร์ unipolar อย่างเต็มรูปแบบด้วยการตั้งค่านี้ง่ายมาก ในการหมุนเครื่องยนต์เราต้องเปิดเฟสในโหมดที่กำหนดเพื่อให้หมุนได้อย่างถูกต้อง ในการหมุนมอเตอร์ตามเข็มนาฬิกาเราจะควบคุมเฟสดังนี้: A1, B1, A2, B2 ในการหมุนทวนเข็มนาฬิกาเราเพียงเปลี่ยนทิศทางของลำดับเป็น B2, A2, B1, A1 สิ่งนี้เป็นสิ่งที่ดีสำหรับการควบคุมขั้นพื้นฐาน แต่ถ้าคุณต้องการความแม่นยำมากขึ้นและทำงานน้อยลง มาพูดคุยเกี่ยวกับการใช้ไดรเวอร์เฉพาะเพื่อทำให้สิ่งต่าง ๆ ง่ายขึ้นมาก!
ขั้นตอนที่ 5: บอร์ดควบคุมมอเตอร์
หากคุณต้องการเริ่มการควบคุมมอเตอร์ไบโพลาร์ (หรือมอเตอร์ยูนิโพลในการกำหนดค่าไบโพลาร์) คุณจะต้องใช้บอร์ดควบคุมไดรเวอร์พิเศษ ภาพด้านบนแสดง Big Easy Driver และบอร์ดผู้ให้บริการสำหรับไดรเวอร์มอเตอร์ A4988 บอร์ดทั้งสองนี้เป็นแผงวงจรพิมพ์สำหรับไดร์เวอร์สเต็ปเปอร์มอเตอร์ Allegro A4988 ของไมโครสเต็ปซึ่งปัจจุบันเป็นหนึ่งในชิปที่พบได้บ่อยที่สุดสำหรับการขับเคลื่อนสเต็ปเปอร์มอเตอร์ขนาดเล็ก นอกเหนือจากการมีสะพานเชื่อมคู่ h ที่จำเป็นสำหรับการควบคุมมอเตอร์แบบไบโพลาร์แล้วบอร์ดเหล่านี้ยังมีตัวเลือกมากมายสำหรับบรรจุภัณฑ์ขนาดเล็กราคาไม่แพง
การติด
บอร์ดสากลเหล่านี้มีการเชื่อมต่อที่ต่ำอย่างน่าอัศจรรย์ คุณสามารถเริ่มควบคุมเครื่องยนต์โดยใช้การเชื่อมต่อเพียงสามจุด (GPIO สองตัวเท่านั้น) กับตัวควบคุมหลักของคุณ: กราวด์, พิทช์และทิศทาง ขั้นตอนและทิศทางยังคงลอยอยู่ดังนั้นคุณต้องผูกมันกับแรงดันอ้างอิงด้วยตัวต้านทานโหลด พัลส์ที่ส่งไปยังขา STEP จะย้ายมอเตอร์ไปหนึ่งก้าวด้วยความละเอียดที่สอดคล้องกับพินอ้างอิงไมโครสเต็ป ระดับลอจิกที่พิน DIR กำหนดว่ามอเตอร์จะหมุนตามเข็มนาฬิกาหรือทวนเข็มนาฬิกา
เครื่องยนต์ไมโครสเต็ป
ขึ้นอยู่กับวิธีการติดตั้งพิน M1, M2 และ M3 คุณสามารถเพิ่มความละเอียดของมอเตอร์ได้ด้วย microsteping ไมโครสเต็ปประกอบด้วยการส่งพัลส์หลากหลายแบบเพื่อดึงมอเตอร์ระหว่างความละเอียดทางแม่เหล็กไฟฟ้าของแม่เหล็กทางกายภาพในโรเตอร์ทำให้สามารถควบคุมได้อย่างแม่นยำ A4988 สามารถไปจากขั้นตอนเต็มไปจนถึงความละเอียดของขั้นตอนที่สิบหก ด้วยเครื่องยนต์ 1.8 องศาของเราสิ่งนี้จะให้มากถึง 3200 ขั้นตอนต่อการปฏิวัติ พูดคุยเกี่ยวกับรายละเอียดเล็ก ๆ น้อย ๆ !
รหัส / ไลบรารี
มอเตอร์ที่เชื่อมต่อได้ง่าย แต่สิ่งที่เกี่ยวกับการควบคุมพวกเขา? ตรวจสอบไลบรารีโค้ดสำเร็จรูปเหล่านี้สำหรับการควบคุมมอเตอร์:
stepper - คลาสสิกใน Arduino IDE ช่วยให้คุณสามารถทำขั้นตอนพื้นฐานและควบคุมความเร็วในการหมุน
แอคเซลสเต็ป - ไลบรารี่เต็มรูปแบบที่ช่วยให้คุณควบคุมเครื่องยนต์ได้ดีขึ้นและให้การเร่งความเร็วและการลดความเร็วของเครื่องยนต์ที่ถูกต้อง
Intel C ++ MRAA Stepper - ไลบรารี่ระดับล่างสำหรับผู้ที่ต้องการเจาะลึกการจัดการสเต็ปเปอร์มอเตอร์ C ++ โดยใช้ Intel Edison
ความรู้นี้น่าจะเพียงพอสำหรับคุณที่จะเข้าใจวิธีการทำงานกับสเต็ปเปอร์มอเตอร์ในโลกไฟฟ้า แต่นี่เป็นเพียงจุดเริ่มต้นเท่านั้น