ข้ามไปที่เนื้อหาหลัก

บทความ

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

ส่งงานครั้งที่ 20

Frequency Counter อุปกรณ์ 555 timer IC and 74LS14 Schmitt trigger gate or NOT gate. 1K Ω resistor(2 pieces), 100Ω resistor 100nF capacitor (2 pieces), 1000µF capacitor 16*2 LCD, 47KΩ pot, Breadboard and some connectors. Diagram Code #include <LiquidCrystal.h> LiquidCrystal lcd(2, 3, 4, 5, 6, 7); int Htime;              //สร้างตัวแปรชื่อHtime int Ltime;                //สร้างตัวแปรชื่อLtime float Ttime;            // สร้างตัวแปรชื่อ Ttime float frequency;        //เรียงความถี่ void setup() {     pinMode(8,INPUT);     lcd.begin(16, 2); } void loop() {     lcd.clear();     lcd.setCursor(0,0);     lcd.print("Frequency of signal");     Htime=pulseIn(8,HIGH);      //อ่านค่าHigh     Ltime=pulseIn(8,LOW);        //อ่านค่าLow        Ttime = Htime+Ltime;     frequency=1000000/Ttime;    //รับค่าความถี่กับเวลา     lcd.setCursor(0,1);     lcd.print(frequency);     lcd.print(" Hz");     delay(500); } Credit By : https:

ส่งงานครั้งที่ 19

Door Alarm อุปกรณ์ Breadboard Ultrasonic Sensor Buzzer Arduino Mega (any model) Jumper Wires USB cable for Arduino or 12v, 1A adapter. Diagram Code #include <NewPing.h> #define TRIGGER_PIN  12  // กำหนดให้ขา 12 เป็นTRIGGER #define ECHO_PIN     11  // กำหนดให้ขา 11 เป็นECHO #define MAX_DISTANCE 500 // ค่าระยะห่างที่มากที่สุด NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); // NewPingตั้งค่าระยะห่าง unsigned int pingSpeed = 50; // ความถี่ในการส่งข้อมูล unsigned long pingTimer; int flag = 0; // รอpingครั้งต่อไป void setup() {   Serial.begin(115200); // เปิด serial monitor ที่ 115200   pingTimer = millis();   pinMode(10, OUTPUT);   // Start now. } void loop() {   if (millis() >= pingTimer) {   // pingSpeed จากครั้งล่าสุดถึงอีก ping     pingTimer += pingSpeed;      // ตั้งเวลาpingครั้งต่อไป     sonar.ping_timer(echoCheck); // ส่งค่าpingออกเรียกว่าฟังก์ชั่น"echoCheck" ทุกๆ24ไมโครเซค   }   if (flag == 1)   {     digita

ส่งงานครั้งที่ 18

12 V Battery Charger อุปกรณ์ Transformer 12V 1Amp IC LM317 (2) Diode Bridge W005 Connector Terminal Block (2) Capacitor 1000uF, 1uF Capacitor 0.1uF (5) Variable resistor 100R Resistor 1k (5) Resistor 10k Diode- Nn007  (3) LM358 – Opamp 0.05R - Shunt Resistor/wire LCD-16*2 (optional) Arduino Nano (optional) Diagram Code #include <LiquidCrystal.h>// ประกาศเมื่อใช้LCD LiquidCrystal lcd(11, 12, 10, 9, 8, 7); float voltage,current;  void setup() {   Serial.begin(9600);   //ตั้งค่าLCD   lcd.begin(16, 2);   // Print a message to the LCD.   lcd.setCursor(0, 0);   lcd.print("12V Charger");   lcd.setCursor(0, 1);   lcd.print("-Circuit Digest");   delay(2000);   lcd.clear();   lcd.setCursor(0, 0);   lcd.print("Voltage = ");   lcd.setCursor(0, 1);   lcd.print("Current = "); } void loop() {   voltage = (analogRead(A0)) * 0.0140625;   current = (analogRead(A1)) * 0.35;           lcd.setCursor(1

ส่งงานครั้งที่ 17

Air Pollution Monitoring อุปกรณ์ MQ135 Gas sensor Arduino Uno Wi-Fi module ESP8266 16X2 LCD Breadboard 10K potentiometer 1K ohm resistors 220 ohm resistor Buzzer Diagram Code #include "MQ135.h" #include <SoftwareSerial.h> #define DEBUG true SoftwareSerial esp8266(9,10); // กำหนดขา 9 ของ Arduino เป็น RX pin และ ขา 10 ของ Arduino เป็น the TX pin const int sensorPin= 0; int air_quality; #include <LiquidCrystal.h> LiquidCrystal lcd(12,11, 5, 4, 3, 2); void setup() { pinMode(8, OUTPUT); lcd.begin(16,2); lcd.setCursor (0,0); lcd.print ("circuitdigest "); lcd.setCursor (0,1); lcd.print ("Sensor Warming "); delay(1000); Serial.begin(115200); esp8266.begin(115200);   sendData("AT+RST\r\n",2000,DEBUG); // reset module   sendData("AT+CWMODE=2\r\n",1000,DEBUG); // กำหนดค่า  access point   sendData("AT+CIFSR\r\n",1000,DEBUG); // รับ ip address   sendData("AT+CIPMUair_quali

ส่งงานครั้งที่ 16

Smoke Detector Using MQ2 อุปกรณ์ Arduino UNO Smoke Detector Arduino Shield (Self Designed) Power Supply Smoke Sensor (MQ2) Resistors (10K and 1K) Buzzer 16x2 LCD 10k POT LED LM358 Burg strips Diagram Code #include <LiquidCrystal.h> LiquidCrystal lcd(12, 11, 5, 4, 3, 2); #define buzzer 9 #define sensor A0   #define load_Res 10   #define air_factor 9.83                                                   float SmokeCurve[3] ={2.3,0.53,-0.44};    // (x, y, slope) x,y พิกัดของจุดหนึ่งและความลาดชันระหว่างสองจุด                                                                                       float Res=0;                 void setup() {   lcd.begin(16,2);   lcd.print("Calibrating.....");                 Res = SensorCalibration();                                                                                           lcd.print("Calibration done.");   lcd.setCursor(0,1);   lcd.print("Res=");   lcd.print(

ส่งงานครั้งที่ 15

Arduino Solar Tracker อุปกรณ์ Servo Motor (sg90) Solar panel Arduino Uno LDR’s X 2 (Light Dependent Resistor) 10K resistors X 2 Battery (6 to 12V) Diagram Code #include <Servo.h>      //ประกาศเมื่อมีการใช้Servo Servo sg90;             //ตั้งค่าServoด้วยตัวแปรsg90 int initial_position = 90;   //ประกาศตัวแปรไว้ที่ค่า 90 int LDR1 = A0;          //ขาที่LDRต่อไว้ int LDR2 = A1;          //ขาที่LDR2ต่อไว้ int error = 5;          //ตั้งค่าเริ่มต้นของ error ที่ 5 int servopin=9; void setup() {    sg90.attach(servopin);  // ให้ servo ที่ขา 9   pinMode(LDR1, INPUT);   //ให้ขาที่ต่อกับLDRเป็นInput   pinMode(LDR2, INPUT);   sg90.write(initial_position);   //ขยับServoไว้ที่90องศา   delay(2000);            // กำหนดdelay2วินาที } void loop() {   int R1 = analogRead(LDR1); // อ่านค่า LDR 1   int R2 = analogRead(LDR2); // อ่านค่า LDR 2   int diff1= abs(R1 - R2);   // คำนวณค่าการเปลี่ยนแปลงของ LDR's   int diff2= abs(R2 - R1);   if((diff1 <=

ส่งงานครั้งที่ 14

Earthquake Detector Alarm อุปกรณ์ Arduino UNO Accelerometer ADXL335 16x2 LCD Buzzer BC547 transistor 1k Resistors 10K POT LED Power Supply 9v/12v Berg sticks male/female Diagram Code #include<LiquidCrystal.h>      // ประกาศเมื่อใช้LCD LiquidCrystal lcd(9,8,7,6,5,4);   // กำหนดขาที่ต่อกับจอ #define buzzer 12 // ขาที่ต่อลำโพง #define led 13  //ขาที่ต่อกับLED #define x A0  // ขาOutputของแกนx #define y A1  // ขาOutputของแกนy #define z A2  // ขาOutputของแกนz /*variables*/ int xsample=0; int ysample=0; int zsample=0; long start; int buz=0; /*Macros*/ #define samples 50 #define maxVal 20   // ค่าที่เปลี่ยนแปลงทาง+มากที่สุด #define minVal -20    // ค่าที่เปลี่ยนแปลงทาง-มากที่สุด #define buzTime 5000  // เวลาที่ลำโพงดัง void setup() {   lcd.begin(16,2);  //ตำแหน่งlcd   Serial.begin(9600); // ค่าการรับส่งข้อมูลserial   delay(1000);   lcd.print("EarthQuake ");   lcd.setCursor(0,1);   lcd.print("Detector    "

ส่งงานครั้งที่ 13

Arduino DC Motor Speed And Direction Control using Relays and MOSFET อุปกรณ์ Arduino Uno Two 12v relay( 5v relay can also be used) Two transistors; BC547 Two pushbuttons IRF540N 10k resistor 24 volt source 10K potentiometer Three diodes 1N4007 Connecting wires Diagram Code int x; int y; void setup()  {   pinMode(2,OUTPUT);   pinMode(3,OUTPUT);   pinMode(6,OUTPUT);   pinMode(A0,INPUT); } void loop()  {   x=analogRead(A0);   y=map(x,0,1023,0,255);   analogWrite(6,y);   digitalWrite(2,HIGH);   digitalWrite(3,HIGH); } Credit By : https://circuitdigest.com/microcontroller-projects/arduino-dc-motor-speed-direction-control

ส่งงานครั้งที่ 12

Arduino Metal Detector อุปกรณ์ Arduino (any) Coil 10nF capacitor Buzzer The 1k resistor 330-ohm resistor LED 1N4148 diode Breadboard or PCB Connecting jumper wire 9v Battery Diagram Code #define capPin A5 #define buz 9 #define pulsePin A4 #define led 10 long sumExpect=0; // running sum of 64 sums  long ignor=0;   //number of ignored sums long diff=0;        //difference between sum and avgsum long pTime=0; long buzPeriod=0;  void setup()  {   Serial.begin(9600);   pinMode(pulsePin, OUTPUT);    digitalWrite(pulsePin, LOW);   pinMode(capPin, INPUT);     pinMode(buz, OUTPUT);   digitalWrite(buz, LOW);   pinMode(led, OUTPUT); } void loop()  {   int minval=1023;   int maxval=0;   long unsigned int sum=0;   for (int i=0; i<256; i++)   {     //reset the capacitor     pinMode(capPin,OUTPUT);     digitalWrite(capPin,LOW);     delayMicroseconds(20);     pinMode(capPin,INPUT);     applyPu

ส่งงานครั้งที่ 11

Arduino Calculator Using 4x4 Keypad อุปกรณ์ Arduino Uno (Any version will work) 16×2 LCD Display 4×4 Keypad 9V Battery Breadboard and Connecting wires Diagram Code /*  * Arduino Keypad calculator Program  */ #include<LiquidCrystal.h>//ประกาศเมื่อจะใช้จอLCD #include <Keypad.h> //ประกาศเมื่อมีกรใช้ Keypad const byte ROWS = 4; // ให้มี 4 แถว const byte COLS = 4; // ให้มี 4 คอลัมม์ // กำหนดรูปแบบ Keypad char keys[ROWS][COLS] = {   {'7','8','9','D'},   {'4','5','6','C'},   {'1','2','3','B'},   {'*','0','#','A'} }; byte rowPins[ROWS] = { 0, 1, 2, 3 };// ต่อ Keypad ROW0, ROW1, ROW2 และ ROW3 ที่บอร์ด byte colPins[COLS] = { 4, 5, 6, 7 }; // ต่อ Keypad COL0, COL1 และ COL2 ที่บอร์ด. Keypad kpd = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS ); //สร้างkeypad const i

ส่งงานครั้งที่ 10

Digital Thermometer อุปกรณ์ 8051 development board ADC0804 board 16*2 LCD display LM35 sensor Potentiometer Jumper wires Diagram Code /*this program is for displaying the temperature on 16*2 lcd display using 8051 microcontroller , LM35 sensor and ADC0804*/ #include<reg51.h> sbit rs=P2^7; //Register Select(RS) pin of 16*2 lcd sbit rw=P2^6; //Read/Write(RW) pin of 16*2 lcd sbit en=P2^5; //Enable(E) pin of 16*2 lcd sbit rd_adc=P3^0; //Read(RD) pin of ADC0804 sbit wr_adc=P3^1; //Write(WR) pin of ADC0804 sbit intr_adc=P3^2; //Interrupt(INTR) pin of ADC0804 void delay(unsigned int)  ; //function for creating delay void cmdwrt(unsigned char); //function for sending commands to 16*2 lcd display void datawrt(unsigned char); //function for sending data to 16*2 lcd display void convert_display(unsigned char); //function for converting ADC value to temperature and display it on 16*2 lcd display void main(void) //main functi

ส่งงานครั้งที่ 9

Gyro Sensor Interfacing Gyro Sensor  คือเซ็นเซอร์ที่มีไว้สำหรับตรวจจับลักษณะการหมุน โ ดยเป็นการตรวจจับแบบ  3  แกน  (3-Axes) อุปกรณ์ Arduino Uno MPU-6050 10K POT Jumper wire Breadboard USB cable Power supply Diagram Code #include<LiquidCrystal.h> //ประกาศเมื่อใช้จอ LiquidCrystal lcd(8,9,10,11,12,13); //ขาที่ต่อจอ #include <Wire.h> #include <MPU6050.h> #define period 10000 MPU6050 mpu; int count=0; char okFlag=0; byte degree[8] = {   0b00000,   0b00110,   0b01111,   0b00110,   0b00000,   0b00000,   0b00000,   0b00000 }; void setup()  {   lcd.begin(16,2);   lcd.createChar(0, degree);   Serial.begin(9600);   Serial.println("Initialize MPU6050");   while(!mpu.begin(MPU6050_SCALE_2000DPS, MPU6050_RANGE_2G))   {     lcd.clear();     lcd.print("Device not Found");     Serial.println("Could not find a valid MPU6050 sensor, check wiring!");