การใช้งาน...

Preview:

Citation preview

กลองสมองกลการใชงาน

ไมโครคอนโทรลเลอรทมใชงานทว ๆ ไป

ไมโครโปรเซสเซอร

ไมโครคอนโทรลเลอร PIC

ไมโครคอนโทรลเลอร MCS-51

ไมโครคอนโทรลเลอร BASIC Stamp ไมโครคอนโทรลเลอร AVR

สโลกไมโครคอนโทรลเลอร

สโลกไมโครคอนโทรลเลอร

ไมโครคอนโทรลเลอรอยรอบๆ ตวเรา

หลกการของระบบควบคม

อนพต เอาตพตประมวลผล

ตวอยางระบบควบคมอยางงายๆ

ตวอยางการใชงานไมโครคอนโทรลเลอรในเครองปรบอากาศ

ตรวจสอบการเปด

จากรโมตหรอสวตช

ระบบควบคมของเครองปรบอากาศ

สงใหคอมเพรสเซอรท างาน

ตรวจสอบอณหภมจาก

เซนเซอร กบคาทตงไว

สงใหคอมเพรสเซอรหยดท างาน

มากกวา

คาทตงไว

นอยกวา

คาทตงไว

+V

220V

Compressor

Microcontroller

A/D in

Digital In

Data In

Digital Out

ชดเรยนรการทดลองวทยาศาสตรกบกลองสมองกล

กวาจะมาเปน

บอรดควบคมหลกกวาจะมาเปน

Sensor ในชด SCI-BOXกวาจะมาเปน

อปกรณยอยส าหรบการทดลองกวาจะมาเปน

กวาจะมาเปน

Basic Stamp Editor

Debug Terminal

Dual Data

เขยนโปรแกรมดวยภาษา BASIC

• การเขยนโปรแกรมดวยภาษาเบสก

• สรางบอรดและอปกรณตอพวงเองไดยาก• โมดลไมโครคอนโทรลเลอรราคาสง (i-Stamp)

ขอดอยของ Sci-BOX

กวาจะมาเปน

ตนแบบรนแรกจาก สสวท.

กวาจะมาเปน ออกแบบฮารดแวรใหมจาก สสวท.

ตนแบบรนแรกจาก สสวท.

สวตช LDR ล าโพง

ตวตานทานปรบคาได

รเลย

LED + 7 Segment

กวาจะมาเปน พฒนาตอโดย inex

สรางเปน IPST-MicroBOX

แผงวงจร IPST-MicroBOX

แปลง USB ==> Serial

เครองโปรแกรม PX-400

กวาจะมาเปน กลมแผงวงจรขบเอาตพต

แผงวงจรขบ LED สองส

แผงวงจรขบ LED อนฟราเรด

แผงวงจรขบล าโพงเปยโซ

แผงวงจรขบรเลย

แผงวงจรขบ ตวเลข 7 สวน

แผงวงจรขบมอเตอรแผงวงจรแสดงผลและพอรตเอนกประสงค

กวาจะมาเปน กลมแผงวงจรขบเอาตพต

• เปนอปกรณรบขอมลดจทล• ใหโลจก ‘0’ ถาตรวจจบคลนอนฟราเรดยานความถ 38kHz ได

2 ชด

กวาจะมาเปน กลมแผงวงจรตรวจจบแบบอะนาลอก

แผงวงจรตรวจจบแสง

แผงวงจรตรวจจบแสงอนฟราเรด

แผงวงจรตรวจจบการสะทอน

แผงวงจรตรวจจบสนามแมเหลก

แผงวงจรตรวจจบอณหภม

โมดลตรวจจบและวดระยะทางดวยแสงอนฟราเรด

แผงวงจรตรวจวดคาความตานทาน

โมดลตรวจจบเสยง

กวาจะมาเปน กลมแผงวงจรตวตานทานปรบคาได

แผงวงจรตวตานทานปรบคาได ตวตง

แผงวงจรตวตานทานปรบคาได ตวนอน

แผงวงจรตวตานทานปรบคาได แบบเลอน

สญลกษณของตวตานทานปรบคาได

กวาจะมาเปน IPST-BOT

กวาจะมาเปน เสยบโมดลเสรมเพอใชควบคมมอเตอร

สวตชเปด/ปดไฟแสดงระดบแบตเตอรสอสาร

Motor 2

Motor 1SERVO MOTORดาวนโหลด

กวาจะมาเปน IPST-BOT

สวตชเปด/ปดไฟแสดงระดบแบตเตอรสอสาร

Motor 2

Motor 1SERVO MOTORดาวนโหลด

รปแบบการพฒนาไมโครคอนโทรลเลอรในปจจบน

รปแบบท 1 ใชไมโครคอนโทรลเลอรมตวแปลภาษา

• โมดลส าเรจรป ไมตองพงอปกรณภายนอก

• ม อนเตอรพรตเตอร (ตวแปลภาษาในตว)

• ซอฟตแวรภาษาเบสกเขยนงาย มใหใชงานฟร

• ใชเวลาในการเรยนรนอย พฒนางานไดเรว

ราคาคอนขางสงเมอเทยบกบไมโครคอนโทรลเลอรตระกลอน

รปแบบการพฒนาไมโครคอนโทรลเลอรในปจจบนรปแบบท 2 ใชไมโครคอนโทรลเลอรผานคอมไพเลอร

• ตองใชเครองโปรแกรมภายนอกในการโปรแกรม

• คอมไพเลอรภาษา C แจกฟร

• ท างานดวยความเรวสง

• ราคา(ไมโครคอนโทรลเลอร ) ไมแพง

ส าหรบผเรมตน ใชระยะเวลาในการเรยนรนานกวารปแบบท 1

รปแบบการพฒนาไมโครคอนโทรลเลอรในปจจบน

รปแบบท 3 ใชไมโครคอนโทรลเลอรผานคอมไพเลอรแบบซอรสเปด

• ไมตองใชเครองโปรแกรมภายนอก

• คอมไพเลอรภาษา C แจกฟร

• ท างานดวยความเรวสง

• ราคา(ไมโครคอนโทรลเลอร ) ไมแพง

• สรางไลบรารไดเอง และมไลบรารส าหรบอปกรณตอพวง

จอส GLCD128x160

รปแบบการพฒนาไมโครคอนโทรลเลอรในปจจบน

รปแบบท 3 ใชไมโครคอนโทรลเลอรผานคอมไพเลอรแบบซอรสเปด

• ไมตองใชเครองโปรแกรมภายนอก

• คอมไพเลอรภาษา C แจกฟร

• ท างานดวยความเรวสง

• ราคา(ไมโครคอนโทรลเลอร ) ไมแพง

• สรางไลบรารไดเอง และมไลบรารส าหรบอปกรณตอพวง

จอส GLCD128x160

ตนก าเนด IPST-SE HARDWARE

IPST-SE

โครงการ Opensource ของ Wiring

IPST-SE

คอมไพเลอร Opensource

Software

Edit+Compire+Download

เปดโฟลเดอรส าหรบ Windows

ดบเบลคลก ตดตง

เปดโฟลเดอรตดตงโปรแกรม

ขนตอนตดตงโปรแกรม

ขนตอนตดตงโปรแกรม

เมอจบขนตอนนจะมหนาตาง ตดตงไดรเวอรหามกด Cancel

ขนตอนตดตงไดรเวอร

เมอจบขนตอนนจะมหนาตาง ตดตงไดรเวอรหามกด Cancel

โปรแกรม wiring

รปแบบการท างานโปรแกรม wiring

void setup() {

}

void loop() {

}

ส าหรบก าหนดคา เกดขนครงเดยว

โปรแกรมหลกท างานตอเนอง

START

ท างานใน Setup

ท างานใน Loop

รปแบบการท างานโปรแกรม wiring

เลอกบอรดทใชงาน

เลอกบอรดเปน IPST-SE

เชอมตอกบคอมพวเตอร

เลอก Serial Port ใหตรงต าแหนง

เลอกพอรตอนกรม

โปรแกรมแรก

#include <ipst.h>

void setup()

{glcd(0,0,"Hello World");

}

void loop()

{}

ตรวจสอบไวยกรณ

คอมไพล

แจงผลวาคอมไพลผาน

อพโหลด

คอมไพลอกครง

โหลดโปรแกรมไปยง IPST-SE

คยลด Ctrl+U

ผลลพธโปรแกรมท 1

คณสมบตของจอภาพ

glcd แสดงขอความทจอ GLCD ได 21 ตว 16 บรรทด (size 1) รปแบบ

void glcd(x,y,*p,...)

พารามเตอรx คอต าแหนงบรรทดมคาตงแต 0-15y คอต าแหนงตวอกษรมคาตงแต 0-24*p คอขอความทตองการน ามาแสดง

คาพเศษ%d แสดงตวเลขจ านวนเตมในชวง -32,768 ถง 32,767%h แสดงตวเลขฐานสบหก%b แสดงตวเลขฐานสอง%l แสดงตวเลขจ านวนเตมในชวง -2,147,483,648 ถง 2,147,483,647%f แสดงผลตวเลขจ านวนจรง (แสดงทศนยม 3 หลก)

ค าสง GLCD

glcd

setTextColor

setTextBackgroundColor

glcdClear

glcdFillScreen

glcdMode

setTextSize

glcdPixel

glcdRect

glcdFillRect

glcdLine

glcdCircle

glcdFillCircleglcdArc

ไลบราร ของ GLCD

setTextColor(COLOR)

unsigned color[]={

GLCD_RED,

GLCD_GREEN,

GLCD_BLUE,

GLCD_YELLOW,

GLCD_BLACK,

GLCD_WHITE,

GLCD_SKY,

GLCD_MAGENTA

};

ตวอยาง#include <ipst.h>

void setup(){

setTextColor(GLCD_WHITE);

glcd(0,0,"Hello");

setTextColor(GLCD_GREEN);

glcd(1,0,"World");

}void loop(){}

คาสตวอกษร

setTextBackgroundColor(COLOR)

unsigned color[]={

GLCD_RED,

GLCD_GREEN,

GLCD_BLUE,

GLCD_YELLOW,

GLCD_BLACK,

GLCD_WHITE,

GLCD_SKY,

GLCD_MAGENTA

};

ตวอยาง#include <ipst.h>

void setup(){

setTextBackgroundColor(GLCD_RED);

setTextColor(GLCD_YELLOW);

glcd(0,0,"Hello World");

}void loop(){}

คาสพนหลงตวอกษร

glcdClear()

ตวอยาง#include <ipst.h>

void setup(){}

void loop(){

glcdClear();

sleep(500);

glcdFillScreen(color[0]);

sleep(500);

glcdFillScreen(color[1]);

sleep(500);

glcdFillScreen(color[2]);

sleep(500);

}

เคลยรหนาจอ

glcdFillScreen(COLOR)

เทสลงบนหนาจอทงหนา

glcdMode หมนหนาจอ ปกตเปน Mode 0ตวอยาง

#include <ipst.h>

void setup(){}

void loop(){

glcdMode(0);

glcd(0,0,"Mode 0");

sleep(1000);

glcdMode(1);

glcd(0,0,"Mode 1");

sleep(1000);

glcdMode(2);

glcd(0,0,"Mode 2");

sleep(1000);

glcdMode(3);

glcd(0,0,"Mode 3");

sleep(1000);

}

setTextSize ปรบขนาดตวอกษร เปนเทาตวถาไมก าหนดขนาดเปน 1 เทา

ตวอยาง#include <ipst.h>

void setup(){}

void loop(){

setTextSize(1);

glcd(0,0,"1x");

setTextSize(2);

glcd(0,2,"2x");

setTextSize(3);

glcd(0,3,"3x");

setTextSize(4);

glcd(1,0,"4x");

setTextSize(5);

glcd(1,2,"5x");

}

การแสดงผลกราฟก

glcdRect(x,y,width,height,color)

glcdFillRect(x,y,width,height,color)

glcdCircle(x,y,radius,color)

glcdFillCircle(x,y,radius,color)

glcdLine(x1,y1,x2,y2,color)

x ต ำแหนงแนวนอนy ต ำแหนงแนวตง

width ควำมกวำงheight ควำมสงredius รศม

จอกวำง 128 pixelจอสง 160 pixel

โจทย

สรำงวงกลมสแดงอยกงกลำงจอภำพ รศมเตมจอพอด

โจทย

ลำกเสน 4 เสนโดยมจดตดอยกลำงจอภำพพอด

โจทย

สรำงสเหลยมซอนกนดงรป

glcd แสดงขอความทจอ GLCD ได 21 ตว 16 บรรทด (size 1) รปแบบ

void glcd(x,y,*p,...)

พารามเตอรx คอต าแหนงบรรทดมคาตงแต 0-15y คอต าแหนงตวอกษรมคาตงแต 0-24*p คอขอความทตองการน ามาแสดง

คาพเศษ%d แสดงตวเลขจ านวนเตมในชวง -32,768 ถง 32,767%h แสดงตวเลขฐานสบหก%b แสดงตวเลขฐานสอง%l แสดงตวเลขจ านวนเตมในชวง -2,147,483,648 ถง 2,147,483,647%f แสดงผลตวเลขจ านวนจรง (แสดงทศนยม 3 หลก)

ค าสง GLCD

การแสดงผลตวเลข

glcd(0,0,"%d",100);

ตวแปรใน Wiring

byte

0-65535 (unsigned int)word

0-255 (unsigned char)

0-1boolean True False

-32768 ถง 32767int

-128 ถง 127char

-3.4 x 1038 ถง 3.4 x 1038 float

หาขอมลเพมเตมจาก reference

หลอด LED เอาตพตดจตอลอยางงาย

out(ch,state);

สงคาสถานะ(state) 0 หรอ 1

ออกไปยงต าแหนงขา (ch)ทระบ

เชน out(17,1);

ค าสงสงคาออกเอาตพตดจตอล

C110/16V

SP1Piezospeaker

S+

K1SOUND

• ใชล าโพงเปยโซ มอมพแดนซ 32W

• มคาความถยาน 300Hz ถง 3000 Hz

แผงวงจรล าโพงเปยโซ : SPEAKER

สรางเสยงออกล าโพง

ฟงกชนก าเนดเสยงอยางงาย beep : ท ำหนำทก ำเนดเสยงควำมถ 500 Hz นำน 100 มลลวนำท

beep(ch);

ฟงกชนก าเนดเสยงความถใดๆ sound : ท ำหนำทก ำเนดเสยงควำมถ ตำมชวงเวลำทก ำหนด

sound(ch,freq,time);

พารามเตอร freq ใชก ำหนดคำควำมถคำสญญำณเสยง

time ใชก ำหนดชวงเวลำในกำรก ำเนดสญญำณเสยงในหนวยมลลวนำท

ค าสงสรางเสยง

#include <ipst.h>

void setup(){

}

void loop(){

beep(19);

sleep(1000);

}

#include <ipst.h>

void setup(){

}

void loop(){

sound(19,1200,500);

sleep(1000);

}

knob()

knob เปนฟงกชนอานคาตวตานทานปรบคาไดบน IPST-SE เหมอนค าสง analog(8) คาอยในชวง 80-1023 รปแบบ

knob();

การคนคา

คาทอานไดจาก knob มคาระหวาง 80-1023ตวอยาง

int val=0; // ก าหนดคาตวแปรส าหรบเกบคาอะนาลอกval=knob(); // อานคาจาก knob เกบคาในตวแปร valglcd(1,2,"%d",val); // น าคาแสดงท GLCDglcdClear();

knob()

sw_OK() ตรวจสอบสวตช OK บน IPST-SE ใหสถานะ True เมอกดสวตชและ Falseเมอไมกดสวตชรปแบบ

sw_OK()การคนคา

1 (True) เมอกดสวตช0 (False) เมอไมกดสวตช

หมายเหต การกดสวตชท าใหคาทอานไดจาก Knob มคาเปน 0ตวอยาง

if(sw_OK()==1)

{

beep(19);

}

สวตช OK บนบอรด

เปนฟงกชนวนตรวจสอบการกดสวตช OKหรอSW1 บนบอรด IPST-SE ตองรอจนกระทง OKหรอSW1 ถกปลอยหลงจากมการกดสวตช จงจะผานฟงกชนนไปท างานค าสงอนๆตวอยาง

......

sw_OK_press(); // รอจนกระทงกดสวตช OKsw1_press(); // รอจนกระทงกดสวตช SW1

......

สวตช sw_ok_press()

สวตชสองตวควบคมการเปดปดหลอดไฟ

เขยนโปรแกรมใชสวตช OK กบ LED

แผงวงจรสวตช: ZX-SWITCH

คณสมบตทางเทคนค•ถาสวตชถกกดจะอานคาขอมลไดเปนลอจก ‚0‛ พรอมกบไฟแสดงสถานะตดสวาง •ถาสวตชไมถกกดจะอานคาขอมลไดเปนลอจก ‚1‛

ฟงกชน inส าหรบอานคาสญญาณแบบดจตอลจากขาพอรตใดๆของบอรดควบคมหลกรปแบบ

char in(char _bit);

พารามเตอร _bit ใชก าหนดต าแหนงหมายเลขพอรตทตองการตดตอการคนคา ฟงกชนจะท าการคนคาสญญาณดจตอลของต าแหนงขาพอรตทอานซงอาจมคาเปน 0 หรอ 1 เทานน

sw_OK_press();

Sw1_press();

in(14);

analog(0);

knob();

ทดสอบเขยนโปรแกรมกบสวตช

LED8

วงจร LED8

ฟงกชน LED8()ส าหรบสงคาออกไปยงบอรด LED8 ในรปแบบขอมล 1 ไบตรปแบบ

LED8(pin,dat);

พารามเตอร pin ใชก าหนดต าแหนงหมายเลขพอรตทตองการตดตอ

dat ขอมลขนาด 1 ไบตทจะสงไปยง LED 8 ดวง คา 0 LED ดบหมด คา 255 LED ตดทงหมด

ตวตานทานปรบคาไดแบบตวนอน

ตวตานทานปรบคาไดแบบเลอน สญลกษณ

แผงวงจรตวตานทานปรบคาได

ฟงกชน analog()อานคาสญญาณอะนาลอก จากต าแหนงพอรตทระบ (A0-A6)รปแบบ

analog(ch);

พารามเตอร ch คอขาพอรตอะนาลอกในต าแหนงทตองการอานคาการคนคา คา 0-1023 (10 บต) จากต าแหนงขาพอรตทตองการ

แผงวงจรตรวจจบแสง LDR

GND

+V

OUT

LDR

R24k7

ใชตรวจจบแสงสวาง เลอกเอาตพตได 2 แบบคอ

แรงดนเอาตพตเพม เมอแสงตกกระทบมากขน

แรงดนเอาตพตลดลง เมอแสงตกกระทบมากขน

แผงวงจรตรวจจบแสง LDR

ไอซวดอณหภม MCP9701

แรงดนเอาตพตเปลยนแปลง 19.5mV/องศาสามารถค านวณคาจากคาอะนาลอกทอานไดจากสตรTemp = (val x 0.25) - 20.51

MCP9701

#include <ipst.h>

int val,i;

float Temp;

void setup(){glcdClear();

setTextSize(2);

}void loop(){glcd(1,2,"Digital");

glcd(2,2,"THERMO");

glcd(3,3,"METER");

val=0;

for (i=0;i<20;i++) {val = val+analog(3); }val = val/20;

Temp = (float(val)*0.25) - 20.51 ;

setTextSize(3);

setTextColor(GLCD_YELLOW);

glcd(3,1,"%f",Temp);

setTextColor(GLCD_WHITE);

setTextSize(2);

glcd(6,2,"Celsius");

delay(500);

}

การสอสารอนกรม

การสอสารอนกรมUART

UART1

การสอสารอนกรม

ฟงกชน uart_available() ถามขอมลถกปอนเขามาเงอนไขเปนจรง

uart_getkey() รบคาขอมล 1 ไบต

uart สงขอมลหลายๆ ไบตออกไป

uart1_available() ถามขอมลถกปอนเขามาเงอนไขเปนจรง

uart1_getkey() รบคาขอมล 1 ไบต

uart1 สงขอมลหลายๆ ไบตออกไป

ใชการสงงานมอเตอร 2 ตว คอ DC Motor 1(ซาย) และ DC Motor 2(ขวา)

ค าสงเดนหนาmotor(1,Speed);//ซายmotor(2,Speed);//ขวา

ค าสงถอยหลงmotor(1,-Speed);

motor(2,-Speed);

ขบเคลอนมอเตอรเบองตน

ขบเคลอนหนยนตไปดานหนา

#include <ipst.h>

void setup()

{

sw_OK_press();

}

void loop()

{

motor(1,40);//ซายmotor(2,40);//ขวา

sleep(1000);

}

ขบเคลอนหนยนตไปดานถอยหลง

#include <ipst.h>

void setup()

{

sw_OK_press();

}

void loop()

{

motor(1,-40);//ซายmotor(2,-40);//ขวา

sleep(1000);

}

หนยนต iBOT เคลอนทตามเวลา#include <ipst.h>

void setup()

{

glcd(1,1,"Press OK");

sw_OK_press();

motor(1,40); //ซายmotor(2,40);// ขวาsleep(4000);//ท างานค าสงขางบน 4 วนาทao();

}

void loop()

{}

ฟงกชน

การเคลอนทหนยนต iBOT

void fd(int speedL,int

speedR)

{

motor(1,speedL);//ซายmotor(2,speedR);//ขวา}

ฟงกชน

การเคลอนทหนยนต iBOT

void bk(int speedL,int

speedR)

{

motor(1,-speedL);//ซายmotor(2,-speedR);//ขวา}

ฟงกชน

การเคลอนทหนยนต iBOT

void tl(int speedL,int

speedR)

{

motor(1,-speedL);//ซายmotor(2,speedR);//ขวา}

ฟงกชน

การเคลอนทหนยนต iBOT

void tr(int speedL,int

speedR)

{

motor(1,speedL);//ซายmotor(2,-speedR);//ขวา}

void setup() {

sw_OK_press();

}

void loop() {

fd(40,40);//เรยกใชฟงกชนเดนตรงsleep(1000);//ท างานค าสงขางบนจนครบ 1 วนาทtl(40,40);//เรยกใชฟงกชนเลยวซายsleep(250);//ท างานค าสงกอนหนา 0.25 วนาทao();//สงใหมอเตอรทกตวหยดการท างาน

}

การเรยกใชฟงกชน

การเคลอนทหนยนต iBOT

สวตชควบคมหนยนต iBOT

ตอ สวตช เขำกบ Port Digital

PORT 17,in(17) = ซาย

PORT 16,in(16) = ขวา

void loop()

{

if (in(17)==0&&in(16)==0)

{fd(40,40);}

else if(in(17)==0)

{tl(40,40);}

else if(in(16)==0)

{tr(40,40);}

else

{ao(); }

}

สรางรถบงคบดวยหนยนต iBOT

การอานคาตวตรวจจบของ

หนยนต iBOT

ตอ สวตช เขำกบ Port Analog

PORT A1,analog(1) = ซาย ,PORT A2,analog(2) = ขวา

#include <ipst.h>

void setup()

{

setTextSize(2);

}

void loop()

{

glcd(0,0,"L=%d

",analog(1));

glcd(1,0,"R=%d

",analog(2));

}

การอานคาตวตรวจจบของ

หนยนต iBOT

การอานคาตวตรวจจบของ

หนยนต iBOT

การหาคากลาง = (คาสขาว + คาสด า)/2 = (900+100)/2

= 500

หนยนต iBOT เคลอนทตามเสน

void loop()

{

L=analog(1);R=analog(2);

if(L>500&&R>500)

{fd(60);}

else if(L<500&&R>500)

{tl(60);}

else if(L>500&&R<500)

{tr(60);}

}

#include <ipst.h>

void setup(){

glcd(1,1,"Press OK");

sw_OK_press();

motor(1,40); motor(2,40);

sleep(4000); ao();

}void loop(){

}

• ใชไอซเบอร ULN2003 ขบรเลย 12V 4 ชอง• ใชไฟเลยง +12V ตอแยก• รบลอจก “1” ใหรเลยท างาน• ม LED แสดงการท างาน• ขบ 220VAC 5A ขบโหลดได 600W

ขดลวดNO (ปกตเปด)

COM (ขารวม)NC (ปกตปด)

รเลย (RELAY)

รเลย (Relay) คอ สวตซทถกส งใหท างาน โดยการปอนสญญาณเพอใชควบคมการท างาน โดยใชหลกการเหนยวน าของขดลวด เกดเปนสนามแมเหลกไฟฟาบรเวณหนาสมผส การทจะท าใหรเลยท างานตองจายไฟใหตามทก าหนด กจะท าใหหนาสมผสตดกนดงภาพ

หลกการท างานของรเลย

เมอไมกดสวตซ รเลยจะไมท างานขา COM เชอมตอกบขา NC

เมอกดสวตซ รเลยจะท างาน ขา COM จะเชอมตอกบขา NO

หลกการท างานของรเลย

+V

220V

Compressor

Microcontroller

A/D in

Digital In

Data In

Digital Out

Solid State Relay

ตวอยางโครงงาน

กลองหาความสงอตโนมต

ตวอยาง Project ทใช SCI-BOX

กลองหาความสงอตโนมต• วตถประสงค เพอสรางกลองหาความสงอตโนมต

• แนวคด ในชวตประจ าวนทวไปหลายครงทตองการทราบความสงของวตถแตไมสามารถใชอปกรณหรอเครองวดโดยตรงได เชน ความสงของเสาธง ความสงของตนไม ความสงของหนาผา เปนตน แตเราสามารถค านวณหาความสงสงเหลานไดโดยใชกระบวนการทางคณตศาสตร ในเรองของสามเหลยมคลาย ใชทฤษฎพธากอรส หรอใชความรทางตรโกณมต แตจะตองเสยเวลาในการค านวณหรอค านวณไมถกตอง แนวทางหนงทสามารถหาความสงของวตถดงกลาวไดงายและ รวดเรวกคอ การสรางกลองหาความสงอตโนมต

วงลออศวน

ตรวจจบการหมน

SCI-BOX

LCD

ใชวงลอหมนเพอวดระยะทางดวยการนบจ านวนรอบน ามาคณกบความยาวของเสนรอบวง โดยการใชอปกรณตรวจจบนบจ านวนรอบและค านวณระยะทางดวยกลองสมองกลและแสดงผลผานทางจอ LCD

หลกการ

ROBOT

การสรางหนยนต

Recommended