- งานซ่อม
- งานเขียนไหม่ เล็ก ใหญ่ รับหมดครับ
- งาน crack password
Project พัดลมปรับความเร็วตามอุณหภูมิ + ควบคุมผ่าน Android Phone
แนะนำความสามารถของพัดลมตัวนี้กันก่อนนะครับ สามารถทำงานได้ 3 โหมด คือ 1. Manual 2. Auto และ 3. Manual โดย Android Phone
มาสคอตสินค้าของ Hada Labo
เป็นผลิตภัณฑ์ดูแลผิวจากประเทศญี่ปุ่น ซึ่งทางทีมงานได้เข้าไปทำระบบไฟฟ้าและควบคุมเจ้าตัวมาสคอตดังรูปด้านล่าง โดยทำเป็นเกม ให้ผู้เล่นแข่งกันตบแก้ม ใครตบเก่งก็เป็นผู้ชนะไปนะครับ
วันศุกร์ที่ 8 สิงหาคม พ.ศ. 2557
วันพุธที่ 4 มิถุนายน พ.ศ. 2557
20:09
Unknown
SHT10 digital humidity and
temperature sensor is the low cost version of the reflow solderable humidity
sensor series. The accuracies have been opened to a level that guarantees a
very competitive price. The capacitive humidity sensor is available up to high
volumes and as every other sensor type of the SHTxx family, it is fully
calibrated and provides a digital output.
Features:
·
Interface Type: Serial
(I2C non standard)
·
Humidity
Ranger:0-100%RH
·
Tempereature ranger:
-40-128.8 degree Celsius
·
Humidity
accuracy:±4.5%RH
·
Temperature
accuracy:±0.5 degree Celsius (25 degree Celsius)
·
Size: 32x17mm
·
Weight:5 gram
Wiring Diagram
Wiring Diagram |
โค้ด
/**
* ReadSHT1xValues
*
* Read temperature and humidity values from an SHT1x-series (SHT10,
* SHT11, SHT15) sensor.
*
* Copyright 2009 Jonathan Oxer <jon@oxer.com.au>
* www.practicalarduino.com
*/
#include <SHT1x.h>
// Specify data and clock connections and instantiate SHT1x object
#define dataPin 10
#define clockPin 11
SHT1x sht1x(dataPin, clockPin);
void setup()
{
Serial.begin(38400); // Open serial connection to report values to host
Serial.println("Starting up");
}
void loop()
{
float temp_c;
float temp_f;
float humidity;
// Read values from the sensor
temp_c = sht1x.readTemperatureC();
temp_f = sht1x.readTemperatureF();
humidity = sht1x.readHumidity();
// Print the values to the serial port
Serial.print("Temperature: ");
Serial.print(temp_c, DEC);
Serial.print("C / ");
Serial.print(temp_f, DEC);
Serial.print("F. Humidity: ");
Serial.print(humidity);
Serial.println("%");
delay(2000);
}
วันจันทร์ที่ 26 พฤษภาคม พ.ศ. 2557
14:19
Unknown
Ladder
Diagram (LD)
เป็นภาษาที่เขียนแสดงอยู่ในรูปของกราฟิค
ซึ่งมีรากฐานมาจากวงจรรีเลยและวงจรไฟฟ้า ซึ่ง แลดเดอร์ ไดอะแกรม จะประกอบด้วย ราง (Rail) ทั้งซ้ายและขวา ของไดอะแกรม
เพื่อใช้สำหรับเชื่อมต่ออุปกรณ์ที่เป็นสวิตช์หน้าสัมผัส เพื่อเป็นทางผ่านของกระแส
และมีขดลวด หรือ คอยล์ เป็นเอ้าท์พุท
Ladder Diagram(LD) |
วันพุธที่ 14 พฤษภาคม พ.ศ. 2557
18:59
Unknown
การทำงานของ PLC ทำงานโดยการสแกน (SCAN) โปรแกรมอย่างต่อเนื่อง การ SCAN 1 รอบจะประกอบด้วยขั้นตอนที่สำคัญ 3 ขั้นตอน (อาจจะมีมากว่า 3 ข้ันตอนก็ได้) ดังภาพ
ขั้นตอนที่ 1 ตรวจสอบสถานะของอินพุท
ขั้นแรก PLC จะตรวจสอบอินพุตแต่ละอินพุตว่ามีสถานะ ON หรือ OFF โดยจะทำการตรวจสอบดูว่า Sensor ที่ต่ออยู่กับอินพุตตัวแรกว่ามีสถานะเป็นอย่างไรแล้วจึงตรวสอบที่อินพุตตัวที่ 2 และ 3 ไปเรื่อยๆ จากนั้นจะทำการบันทึกข้อมูลที่ได้ลงในหน่วยความจำเพื่อจะใช้ในขั้นตอนต่อไป
ขั้นตอนที่ 2 การประมวลผลของโปรแกรม
ขั้นตอนนี้ PLC จะทำการประมวลผลตามโปรแกรมที่ได้เขียนขึ้นโดยจะทำเพียงคำสั่งละครั้ง ตัวอย่างเช่น ตัวโปรแกรมอาจจะบอกว่า "ถ้าอินพุตแรกมีสถานะเป็น ON จากนั้นจะ ทำให้เอาต์พุตแรกมีสถานะ ON" เนื่องจากเรารู้มาแล้วว่าอินพุตมีสถานะ ON หรือ OFF จากขั้นตอนที่แล้ว ดังนั้นจึงทำให้ PLC สามารถตัดสินใจได้ว่าเอาต์พุตแรกควรจะมีสถานะ เป็นอย่างไร จากนั้นก็จะเก็บผลที่ได้จากการประมวลผลไว้ในหน่วยความจำเพื่อใช้ในขั้นตอนต่อไป
ขั้นตอนที่ 3 ปรับปรุงสถานะของเอาต์พุต
ขั้นตอนสุดท้ายคือ PLC จะทำการปรับปรุงสถานะของเอาต์พุด โดยในการปรับปรุงค่าสถานะของเอาต์พุตนี้จะขึ้นอยู่สถานะ ของอินพุตที่ได้มาจากขั้นตอนแรกและผลจากการประมวลผลตามโปรแกรมในช่วงขั้นตอนที่สอง
หลังจากเสร็จขั้นตอนที่สามแล้ว PLC จะกลับไปที่ขั้นตอนที่ 1 และทำซ้ำไปเรื่อยๆอย่างต่อเนื่อง ซึ่งนอกจากเหนือจากขั้นตอนทั้งสามนี้แล้ว PLC อาจจะใช้เวลาในการติดต่อสื่อสารกับอุปกรณ์อื่นๆ หรือตรวจสอบสถานการณ์ทำงานต่างๆ ซึ่งไม่มีนัยยะสำคัญมากนัก
ดังนั้น 1 scan time จะหมายถึงเวลาที่ใช้ไปในการทำงานตามขั้นตอนหลักทั้ง 3 ที่ได้กล่าวมา
ขั้นตอนที่ 1 ตรวจสอบสถานะของอินพุท
ขั้นแรก PLC จะตรวจสอบอินพุตแต่ละอินพุตว่ามีสถานะ ON หรือ OFF โดยจะทำการตรวจสอบดูว่า Sensor ที่ต่ออยู่กับอินพุตตัวแรกว่ามีสถานะเป็นอย่างไรแล้วจึงตรวสอบที่อินพุตตัวที่ 2 และ 3 ไปเรื่อยๆ จากนั้นจะทำการบันทึกข้อมูลที่ได้ลงในหน่วยความจำเพื่อจะใช้ในขั้นตอนต่อไป
ขั้นตอนที่ 2 การประมวลผลของโปรแกรม
ขั้นตอนนี้ PLC จะทำการประมวลผลตามโปรแกรมที่ได้เขียนขึ้นโดยจะทำเพียงคำสั่งละครั้ง ตัวอย่างเช่น ตัวโปรแกรมอาจจะบอกว่า "ถ้าอินพุตแรกมีสถานะเป็น ON จากนั้นจะ ทำให้เอาต์พุตแรกมีสถานะ ON" เนื่องจากเรารู้มาแล้วว่าอินพุตมีสถานะ ON หรือ OFF จากขั้นตอนที่แล้ว ดังนั้นจึงทำให้ PLC สามารถตัดสินใจได้ว่าเอาต์พุตแรกควรจะมีสถานะ เป็นอย่างไร จากนั้นก็จะเก็บผลที่ได้จากการประมวลผลไว้ในหน่วยความจำเพื่อใช้ในขั้นตอนต่อไป
ขั้นตอนที่ 3 ปรับปรุงสถานะของเอาต์พุต
ขั้นตอนสุดท้ายคือ PLC จะทำการปรับปรุงสถานะของเอาต์พุด โดยในการปรับปรุงค่าสถานะของเอาต์พุตนี้จะขึ้นอยู่สถานะ ของอินพุตที่ได้มาจากขั้นตอนแรกและผลจากการประมวลผลตามโปรแกรมในช่วงขั้นตอนที่สอง
หลังจากเสร็จขั้นตอนที่สามแล้ว PLC จะกลับไปที่ขั้นตอนที่ 1 และทำซ้ำไปเรื่อยๆอย่างต่อเนื่อง ซึ่งนอกจากเหนือจากขั้นตอนทั้งสามนี้แล้ว PLC อาจจะใช้เวลาในการติดต่อสื่อสารกับอุปกรณ์อื่นๆ หรือตรวจสอบสถานการณ์ทำงานต่างๆ ซึ่งไม่มีนัยยะสำคัญมากนัก
ดังนั้น 1 scan time จะหมายถึงเวลาที่ใช้ไปในการทำงานตามขั้นตอนหลักทั้ง 3 ที่ได้กล่าวมา
วันอังคารที่ 13 พฤษภาคม พ.ศ. 2557
13:32
Unknown
หลักการทำงาน
Wiring Digaram
Arduino Code
Wiring Digaram
Arduino Code
#include <Servo.h>
Servo myservo; // create servo object to control a servo
// a maximum of eight servo objects can be created
int pos = 0; // variable to store the servo position
int motor = 0;
void setup()
{
Serial.begin(9600); // initialize serial:
myservo.attach(9); // attaches the servo on pin 9 to the servo object
Serial.print("Arduino control Servo Motor Connected OK");
Serial.print('\n');
}
void loop()
{
// if there's any serial available, read it:
while (Serial.available() > 0) {
// look for the next valid integer in the incoming serial stream:
motor = Serial.parseInt();
// do it again:
pos = Serial.parseInt();
// look for the newline. That's the end of your sentence:
if (Serial.read() == '\n') {
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(15); // waits 15ms for the servo to reach the position
// print the three numbers in one string as hexadecimal:
Serial.print("Data Response : ");
Serial.print(motor, DEC);
Serial.print(pos, DEC);
}
}
}
//for(pos = 0; pos < 180; pos += 1) // goes from 0 degrees to 180 degrees
//{ // in steps of 1 degree
// myservo.write(pos); // tell servo to go to position in variable 'pos'
// delay(15); // waits 15ms for the servo to reach the position
//}
//for(pos = 180; pos>=1; pos-=1) // goes from 180 degrees to 0 degrees
//{
// myservo.write(pos); // tell servo to go to position in variable 'pos'
// delay(15); // waits 15ms for the servo to reach the position
//}
//val = analogRead(potpin); // reads the value of the potentiometer (value between 0 and 1023)
//val = map(val, 0, 1023, 0, 179); // scale it to use it with the servo (value between 0 and 180)
//myservo.write(val); // sets the servo position according to the scaled value
//delay(15);
App Andorid
ขอบคุณ http://microcontrollerkits.blogspot.com/2014/01/arduino-usb-control-servo-motor.html
วันศุกร์ที่ 18 เมษายน พ.ศ. 2557
08:24
Unknown
รับเขียนโปรแกรม arduino ทุกรุ่น ปรึกษาได้
080-422-4466
automation999.engineer@gmail.com
http://www.elec2you.com/
Elec2you จำหน่ายอุปกรณ์อิเล็กทรอนิกส์ เซ็นเซอร์ ไมโครคอนโทรลเลอร์ พีแอลซี เป็นต้น ราคาถูกที่สุด
http://www.elec2you.com/
Elec2you จำหน่ายอุปกรณ์อิเล็กทรอนิกส์ เซ็นเซอร์ ไมโครคอนโทรลเลอร์ พีแอลซี เป็นต้น ราคาถูกที่สุด
วันพุธที่ 16 เมษายน พ.ศ. 2557
วันอาทิตย์ที่ 30 มีนาคม พ.ศ. 2557
วันอังคารที่ 18 มีนาคม พ.ศ. 2557
08:57
Unknown
เริ่มกันเลยนะครับ
แนะนำกันก่อนเข้าไปให้ Folder ที่ติดตั้ง arduino
จะมี Folder ชื่อ library ที่เก็บข้อมูล library
เมื่อเข้าไป folder libraries จะแสดง libraries ทั้งหมดที่มี
มารู้จักวิธีการ add libraries กัน
1.ไปดาวโหลด libraries ตามเว็ปไซค์ที่เขาให้มาอิอิอิ
จากนั้นให้แตกไฟล์แล้วก๊อปไฟล์ไปไว้ใน folder library
โดยมีเงื่อนไขคือ libraries แล้วตามด้วยชื่อ folder library ข้างใน folder ต้องมีไฟล์ตามรูปด้านบน
แนะนำกันก่อนเข้าไปให้ Folder ที่ติดตั้ง arduino
จะมี Folder ชื่อ library ที่เก็บข้อมูล library
เมื่อเข้าไป folder libraries จะแสดง libraries ทั้งหมดที่มี
มารู้จักวิธีการ add libraries กัน
1.ไปดาวโหลด libraries ตามเว็ปไซค์ที่เขาให้มาอิอิอิ
เป็นไฟล์ zip นะครับ
จากนั้นให้แตกไฟล์แล้วก๊อปไฟล์ไปไว้ใน folder library
โดยมีเงื่อนไขคือ libraries แล้วตามด้วยชื่อ folder library ข้างใน folder ต้องมีไฟล์ตามรูปด้านบน
ปิดแล้วเปิดใหม่จะได้ดังรูปคับ RTClib เป็นชื่อ folder library ส่วน datecalc ,ds1307 และ softrtc เป็นตัวอย่างโปรแกรมให้ใช้งาน
ติดต่องานเขียนโปรแกรม arduino 080-422-4466
วันอังคารที่ 4 มีนาคม พ.ศ. 2557
23:22
Unknown
รังสีอินฟราเรด (Infrared (IR)) มีชื่อเรียกอีกชื่อว่า รังสีใต้แดง หรือรังสีความร้อน เป็นคลื่นแม่เหล็กไฟฟ้าที่มีความยาวคลื่นอยู่ระหว่างคลื่นวิทยุและแสงมีความถี่ในช่วง 1011 – 1014 เฮิร์ตซ์ มีความถี่ในช่วงเดียวกับไมโครเวฟ มีความยาวคลื่นอยู่ระหว่างแสงสีแดงกับคลื่นวิทยุ คุณสมบัติเฉพาะตัวของรังสีอินฟราเรด เช่น ไม่เบี่ยงเบนในสนามแม่เหล็กไฟฟ้า ที่แตกต่างกันก็คือ คุณสมบัติที่ขึ้นอยู่กับความถี่ คือยิ่งความถี่สูงมากขึ้น พลังงานก็สูงขึ้นด้วย
รูปตัวส่ง
รูปตัวรับ
นำมาประยุกต์ใช้งานได้ดังรูป
ด้านซ้ายมือวงจรตัวส่ง-ด้านขวามือวงจรตัวรับ สัญญาณแสง
เมื่อมีการรับสัญญาณกันระหว่างตัวรับและตัวส่ง infrared light จะวัดสัญญาณ adc ได้ 5v แต่เมื่อตัวรับและตัวส่ง ส่ง infrared light ไม่ถึงกัน acd จะได้ 0v
เพื่อให้วงจรดีขึ้นนำ โดยเราใช้ LM311 ซึ่งเป็น Comparator มาใช้ในการเปรียบเทียบแรงดัน เพื่อให้ output ที่ได้นั้นออกมาเป็นลอจิก '0' หรือ '1' ดังรูปด้านล่าง
รูป วงจร Infrared with Comparator
วันอาทิตย์ที่ 2 มีนาคม พ.ศ. 2557
18:58
Unknown
ผลิตจากโรงงานระดับ World Class ในประเทศจีน คุณภาพการผลิตดีกว่าของอิตาลี แต่ราคาประหยัดกว่า
สั่งซื้อเลยครับ
www.elec2you.com 350 บาท เว็ปเจ้าของเดียวกันครับ k.ต้อม 0804224466
สั่งซื้อเลยครับ
www.elec2you.com 350 บาท เว็ปเจ้าของเดียวกันครับ k.ต้อม 0804224466
ข้อมูลเพิ่มเติม
วันจันทร์ที่ 24 กุมภาพันธ์ พ.ศ. 2557
วันศุกร์ที่ 21 กุมภาพันธ์ พ.ศ. 2557
วันพุธที่ 19 กุมภาพันธ์ พ.ศ. 2557
20:59
Unknown
ฟังก์ชัน Division : DIV PLC Mitsubishi
คำสั่งประยุกต์ประเภทนี้เป็นคำสั่งที่ทำหน้าที่ในการหารค่าของข้อมูลระหว่างอุปกรณ์ต้นทาง S1 และหารด้วยอุปกรณ์ต้นทาง S2 และจัดเก็บที่อุปกรณ์ปลายทาง D
ตัวอย่างเช่น
S1 = 5
S2 = 5
D = ?
จากสมการ S1 / S2 = D แทนค่าในสมการ 5 / 5 = 1 คำตอบ D = 1
อธิบายจากรูป Division มีสัญลักษณ์ที่ใช้ในภาษา IL สำหรับ 16 บิต คือ DIV (Division ) และ DIVP (Division Pulse) มี Program Steps เท่ากับ 7 ส่วน 32 บิต คือ DDIV (Double Division ) และ DDIVP (Double Division Pulse) มี Program Steps เท่ากับ 13
S2 = 5
D = ?
จากสมการ S1 / S2 = D แทนค่าในสมการ 5 / 5 = 1 คำตอบ D = 1
อธิบายจากรูป Division มีสัญลักษณ์ที่ใช้ในภาษา IL สำหรับ 16 บิต คือ DIV (Division ) และ DIVP (Division Pulse) มี Program Steps เท่ากับ 7 ส่วน 32 บิต คือ DDIV (Double Division ) และ DDIVP (Double Division Pulse) มี Program Steps เท่ากับ 13
ตัวอย่างโปรแกรม PLC DIV 16 บิต
D10 = 5
D12 = 5
เมื่อ X0 ทำงาน หรือ Active D10 / D12 = D14 เฉพาะนั้น D14 = 1
ตัวอย่างโปรแกรม PLC DDIV 32 บิต
เขียนโปรแกรมดังรูปด้านบนแล้วกำหนดให้
D10 = 100000
D12 = 1
เมื่อ X0 ทำงาน หรือ Active D10 / D12 = D14 เฉพาะนั้น D14 = 100000
คำสั่ง Arithmetic, Logical Operations อื่น ๆ
ฟังก์ชัน Addtion : ADD PLC Mitsubishi
ฟังก์ชัน Subtraction : SUB PLC Mitsubishi
ฟังก์ชัน Multipication : MUL PLC Mitsubishi
สมัครสมาชิก:
บทความ
(
Atom
)