บทความ

กำลังแสดงโพสต์จาก กรกฎาคม, 2018

งานที 4

รูปภาพ
int led = 10; void setup() {   Serial.begin(9600);   pinMode(led,OUTPUT);    } void loop() {   int x,y;   x = analogRead(A0);   y = map(x,0,1023,0,255);   Serial.print("x = ");Serial.println(x);   Serial.print("y = ");Serial.println(y);    analogWrite(led,y); }

งานที่ 3

รูปภาพ
#include "LedControl.h" LedControl lc=LedControl(5,7,6,1); // Pin 5->DIN, 7->CLK, 6->CS(LOAD), 1 = No.of devices void show4digit(int num) {    int seg1,seg2,seg3,seg4;   seg1 = ((num%1000)%100)%10;   seg2 = ((num%1000)%100)/10;   seg3 = (num%1000)/100;   seg4 = num/1000;    lc.setDigit(0,0,seg1,false);   if (num>=10)     lc.setDigit(0,1,seg2,false);     if (num>=100)         lc.setDigit(0,2,seg3,false);     if (num>=1000)         lc.setDigit(0,3,seg4,false);      delay(300); } void setup() {     Serial.begin(9600);     lc.shutdown(0,false);      lc.setIntensity(0,5);     lc.clearDisplay(0);      } void loop() {     int num;     num = analogRead(A0);     Serial.print("analogRead=");Serial.println(num);     lc.clearDisplay(0);     show4digit(num); }

งานที่ 2

รูปภาพ
void setup() {   pinMode(13,OUTPUT);   pinMode(12,OUTPUT);   pinMode(4, INPUT); } void loop() {   buttonState = digitalRead(4);   if (buttonState == LOW ) {     digitalWrite(13, HIGH);       delay(200);                       digitalWrite(12, LOW);         delay(200);     digitalWrite(12, HIGH);       delay(200);                       digitalWrite(13, LOW);         delay(200);        } else {     digitalWrite(13, LOW);     digitalWrite(12, LOW);   } } void setup() {   pinMode(13,OUTPUT);   pinMode(12,OUTPUT);   pinMode(4, INPUT); } void loop() {   buttonState = digitalRead(4);   if (buttonState == HIGH) {     digitalWrite(13, HIGH);       delay(200);                       digitalWrite(12, LOW);         delay(200);     digitalWrite(12, HIGH);       delay(200);                       digitalWrite(13, LOW);         delay(200);        } else {     digitalWrite(13, LOW);     digitalWrite(12, LOW);   } }

งานที่ 1

รูปภาพ
void setup() { pinMode(13,OUTPUT); pinMode(12,OUTPUT); } void loop() {   digitalWrite(13, HIGH);     delay(200);                     digitalWrite(12, LOW);       delay(200);   digitalWrite(12, HIGH);     delay(200);                     digitalWrite(13, LOW);       delay(200);                        }

www.semi-shop.com/knowledge/knowledge_detail.php?sk_id=104

รูปภาพ
Arduino กับพื้นฐานการควบคุมความเร็วมอเตอร์เบื้องต้น การควบคุมความเร็วมอเตอร์กระแสตรงนั้นสามารถจะทำได้ง่ายๆ โดยใช้วิธีลดระดับแรงดันให้ต่ำลงกว่าแรงดันปกติ ก็จะทำให้มอเตอร์หมุนช้าลงได้ การลกละดับแรงดันให้มอเตอร์ โดยทั่วไปแล้วในการปรับความเร็วมอเตอร์กระแสตรงแบบง่ายๆ จะมีวงจรปรับความเร็วมอเตอร์ซึ่งจะทำการกำเนิดสัญญาณความถี่ ที่แตกต่างกันออกไป แล้วไปขับวงจรขับมอเตอร์ทำให้มอเตอร์หมุนช้า เร็วได้ วงจรปรับความเร็วรอบมอเตอร์ การปรับความเร็วรอบด้วยความถี่  ในการทดลองนี้จะใช้สร้างสัญญาณความถี่แบบง่ายๆในการปรับความเร็ว เพราะ เมื่อความถี่เปลี่ยนไป แรงดันที่ตกคร่อมที่มอเตอร์จะลดลงทำให้มอเตอร์หมุนช้าลงไปด้วย ซึ่งค่า % จะเรียกว่า ค่า Duty cycle และ การสร้างความถี่แบบนี้ เราจะเรียกว่า PWM ( Pulse Width Modulation) การเปลี่ยน ค่า% ความถี่ Duty cycle 100 % มอเตอร์จะหมุนด้วยความเร็วเต็มที่ ( ความเร็วปกติ) Duty cycle 75 % มอเตอร์จะหมุนด้วยความเร็ว ลดลงมา Duty cycle 50 % มอเตอร์จะหมุนด้วยความเร็ว ลดลงมา Duty cycle 30 % มอเตอร์จะหมุนด้วยความเร็วช้ามาก หรือ อาจจะหยุดหมุนได้ วงจรในการทดสอบ  ในการ

https://www.arduitronics.com/article/22/arduino-and-motor-control-part-1

รูปภาพ
Arduino and Motor Control : Part 1 เมื่อ  3 ปีที่ผ่านมา โดย  เจ้าของร้าน วันนี้เรามาพูดถึงการควบคุมมอเตอร์กระแสตรงกันหน่อย  (ขอโฆษณานิดนะครับ ของที่ใช้ในการทำอยู่ใน Arduino Stater Kit 1 )  แต่บอกไว้ก่อนนะครับ ผมกะจะเขียนบทความแบ่งออกเป็นตอนๆ โดยจะมีเนื้อหาในการควบคุมมอเตอร์ชนิดต่างๆ ดังนี้ครับ   ง่ายสุดก็ DC motor หรือ มอเตอร์กระแสตรง  ซัก 2 ตอน  โดยว่ากันถึงการควบคุมทิศการหมุน และ การควบคุมความเร็วรอบ ต่อมาก็ Servo motor   ซัก 2 ตอน   และปิดท้ายด้วย Stepping Motor  2 ตอน  ครับ  วันนี้ก็ดูจะง่ายๆ ไปก่อนนะครับ Sketch ที่ใช้เป็นตัวอย่างผมไปเอามาจาก Arduino Cookbook โดยคุณ Michael Margolis นะครับ  แล้วมาเขียนเนื้อหาใหม่ โดยอธิบายให้ง่าย และลึกขึ้น  บอกไว้ก่อนเดี๋ยวจะมีคนหาว่าไปลอกมาอีก    DC motor ประกอบด้วย 2 ส่วนหลักๆ ได้แก่ โรเตอร์ และสเตเตอร์ นะครับ  โรเตอร์ก็คือส่วนที่หมุน ส่วนสเตเตอร์คือส่วนที่เป็นขดลวดที่สร้างสนามแม่เหล็ก      หลักการทำงานของ DC motor คร่าวๆ ก็คือการนำกระแสตรงมาตัดผ่านสนามแม่เหล็ก ทำให้เกิดทอร์กขึ้นในทิศที่เหมาะสม และสร้างให้เกิดการหม