วันนี้ไม่ค่อยได้ทำอะไรเป็นชิ้นเป็นอันเลยจะเอาเรื่องบอร์ดควบคุมมอเตอร์ที่ผมจะใช้ควบคุมรถในโครงงาน
โดยต้องทำความเข้าใจกันก่อน มอเตอร์ ที่ว่านี้เป็นมอเตอร์ใช้ไฟฟ้ากระแสตรงที่เราใช้งานกันทั่วไป(มอเตอร์ขนาดเล็กใช้กับรถบังคับ)
หลักการที่ผมใช้ในการควบคุมคือ มอเตอร์จะทำงานอย่างไรขึ้นกับกระแสไฟฟ้าที่ไหลเข้ามอเตอร์ ซึ่งถูกควบคุมด้วยบอร์ดขับมอเตอร์ ในโครงงานนี้ผมใช้บอร์ดของ inex รุ่น zx-motor3a
มีdatasheet http://www.inexglobal.com/downloads/zx-motor3a_e.pdf
หลังจากอ่านdataseetแล้วเราก็ได้คุณสมบัติของบอร์ดดังนี้
ขับมอเตอร์ได้2ตัว
กระแสสูงสุดที่รับได้ 3 A
ควบคุมมอเตอร์ด้วยสายสัญญาน3สาย
supply 9-24v
ขาที่ควบคุม
A,Bเป็นทิศทาง
Gเป็น gnd หรือ pwm ได้
เมื่อรู้ขาที่ต้องใช้ควบคุมแล้วเราจะออกแบบให้ บอร์ด arduno ควบคุม 3 ขาได้แก่ทิศทาง2และpwmอีก1
โดยทิศทางทั้งสองเราจะต้องมี port digital 2 port มาควบคุมโดยเราดูทิศทางได้จากdatasheet
ผมจังกำหนดขาของ digital port คือ(ไม่ทำอย่างนี้ก็ได้แต่จะสับสนเวลาใช้งาน)
ในตัวอย่างใช้ port 22,23
int m1D1=22; int m1D2=23;
หลังจากนั้นในส่วน void setup()ก็กำหนดโหมดของ PIN pinMode
port 22,23 โหมด output
pinMode(m1D1,OUTPUT);
pinMode(m1D2,OUTPUT);
เมื่อเรียกใช้งาน digital port ก็ใช้คำสั่ง digitalWrite
ตัวอย่างport 22ให้ logic 0
digitalWrite(m1D1,LOW);
ส่วน pwm คือการควบคุมความเร็วของมอเตอร์ด้วยความถี่ และ dutycycle
โดย arduno ใช้คำสั่ง analogwrite เป็นตัวควบคุมความเร็วในอีกขานังของ บอร์ด
ตัวอย่างการใช้งาน
ส่วนประกาศว่าเลือกใช้ digital port 8
pwm2=8;
ส่วนที่ให้ค่าoutputควบคุมความเร็วมอเตอร์โดยค่า255นี้เป็นค่าต่ำสุด
analogWrite(pwm2, 255);
จากBlogที่ผมต้องการเขียนขึ้นมาเพื่อบันทึกเรื่องราวในการฝึกงานเป็นบล็อกที่พยายามเขียนบทความไฟฟ้าอิเล็กทรอกนิกส์และคอมพิวเตอร์
ป้ายกำกับ
FIBO
(28)
microcontroller
(16)
CHIPKIT
(6)
robotics
(6)
Camera
(5)
Photo
(5)
arduino
(5)
bluetooth
(5)
communication
(5)
ubuntu
(5)
กล้อง
(5)
ถ่ายรูป
(5)
android
(4)
pid control
(4)
notebook
(2)
Agile
(1)
CI
(1)
Software engineering
(1)
algorithm
(1)
controller
(1)
game
(1)
guitar
(1)
hardware
(1)
programming
(1)
ล๊อตเตอรี่
(1)
สลากกินแบ่งรัฐบาล
(1)
หวย
(1)
ไม่มีความคิดเห็น:
แสดงความคิดเห็น