ดังที่คุณทราบ มอเตอร์ไฟฟ้ามีสามประเภทหลัก: คอลเลคเตอร์ สเต็ปเปอร์ และเซอร์โวไดรฟ์ ในบทความนี้ เราจะมาดูการเชื่อมต่อมอเตอร์สะสมกับ Arduino โดยใช้ไดรเวอร์มอเตอร์ที่ใช้ชิป L9110S หรือใกล้เคียงกัน
จำเป็น
- - Arduino;
- - คอมพิวเตอร์ส่วนบุคคลที่มีสภาพแวดล้อมการพัฒนา Arduino IDE
- - ตัวขับมอเตอร์ L9110S หรือใกล้เคียง
- - มอเตอร์ไฟฟ้าสะสม
- - สายเชื่อมต่อ
คำแนะนำ
ขั้นตอนที่ 1
คุณไม่สามารถเชื่อมต่อมอเตอร์ไฟฟ้ากับพิน Arduino ได้โดยตรง: มีความเสี่ยงที่จะไหม้พินที่มอเตอร์เชื่อมต่ออยู่ ในการเชื่อมต่อมอเตอร์ไฟฟ้าประเภทต่างๆ กับ Arduino อย่างปลอดภัย จำเป็นต้องใช้ไดรเวอร์มอเตอร์แบบโฮมเมดหรือที่ผลิตในเชิงพาณิชย์ มีตัวขับมอเตอร์ที่แตกต่างกันมากมาย ประเภทที่พบบ่อยที่สุดคือ HG788, L9110S, L293D, L298N และอื่นๆ ตัวขับมอเตอร์มีสายไฟ สายไฟมอเตอร์ และสายควบคุม ในบทความนี้ เราจะใช้ไดรเวอร์มอเตอร์ที่ใช้วงจรไมโคร L9110S โดยปกติแล้วจะมีการผลิตบอร์ดที่รองรับการเชื่อมต่อของมอเตอร์หลายตัว แต่สำหรับการสาธิตเราจะทำสำเร็จ
ขั้นตอนที่ 2
มอเตอร์ที่ง่ายที่สุดคือมอเตอร์แบบมีแปรงถ่าน มอเตอร์เหล่านี้มีหน้าสัมผัสควบคุมเพียงสองตัวเท่านั้น ขึ้นอยู่กับขั้วของแรงดันไฟฟ้าที่ใช้กับพวกเขาทิศทางของการหมุนของเพลามอเตอร์จะเปลี่ยนไปและขนาดของแรงดันไฟฟ้าที่ใช้จะเปลี่ยนความเร็วในการหมุน
มาต่อมอเตอร์กันตามไดอะแกรมที่แนบมา แหล่งจ่ายไฟของไดรเวอร์มอเตอร์คือ 5 V จาก Arduino เพื่อควบคุมความเร็วของโรเตอร์มอเตอร์ หน้าสัมผัสควบคุมจะเชื่อมต่อกับพิน Arduino ที่รองรับ PWM (การปรับความกว้างพัลส์)
ขั้นตอนที่ 3
มาเขียนแบบร่างเพื่อควบคุมมอเตอร์สะสมกัน มาประกาศค่าคงที่สองค่าสำหรับขาที่ควบคุมมอเตอร์ และตัวแปรหนึ่งสำหรับการจัดเก็บค่าความเร็ว เราจะถ่ายโอนค่าของตัวแปร Speed ไปยังพอร์ตอนุกรมและเปลี่ยนความเร็วและทิศทางการหมุนของมอเตอร์
ความเร็วในการหมุนสูงสุด - ที่ค่าแรงดันไฟสูงสุดที่ตัวขับมอเตอร์จ่ายได้ เราสามารถควบคุมความเร็วของการหมุนได้โดยการจ่ายแรงดันไฟในช่วง 0 ถึง 5 โวลต์ เนื่องจากเราใช้พินดิจิตอลกับ PWM แรงดันไฟฟ้าบนพวกมันจึงถูกควบคุมโดยคำสั่ง analogWtirte (พิน, ค่า) โดยที่พินคือจำนวนของพินที่เราต้องการตั้งค่าแรงดันไฟฟ้า และอาร์กิวเมนต์ค่าเป็นสัดส่วนสัมประสิทธิ์ ค่าแรงดันรับค่าในช่วงตั้งแต่ 0 (แรงดันพินเป็นศูนย์) ถึง 255 (แรงดันพินคือ 5 V)
ขั้นตอนที่ 4
โหลดภาพสเก็ตช์ลงในหน่วยความจำ Arduino มาเปิดตัวกันเลย เครื่องยนต์ไม่หมุน การตั้งค่าความเร็วในการหมุนจะต้องส่งค่าระหว่าง 0 ถึง 255 ไปยังพอร์ตอนุกรมทิศทางของการหมุนถูกกำหนดโดยเครื่องหมายของตัวเลข
เชื่อมต่อโดยใช้เทอร์มินัลใด ๆ กับพอร์ตส่งหมายเลข "100" - เครื่องยนต์จะเริ่มหมุนด้วยความเร็วเฉลี่ย ถ้าเราให้ "ลบ 100" มันจะเริ่มหมุนด้วยความเร็วเท่ากันในทิศทางตรงกันข้าม