Friday, September 14, 2018

MINI project Arduino Wifi Car Controlled

                                                             Arduino Wifi Car Controlled






อุปกรณ์
   1.ARDUINO UNO R3
   2.L298N  MOTOR DRIVER
   3.ESP-01S ESP8266-01S โมดูล Serial Wifi ESP 8266 รุ่น ESP-01S
   4.DC MOTOR
   5.Character LCD Display
   6.ล้อ









                                                                   บล็อกไดอะแกรม




ดาวน์โหลด แอพพลิเคชั่น






CODE



#include<TEE_ESP_WIFI.h>
#include <SoftwareSerial.h>
#define pinEN 9
#define ESP_Rx 10
#define ESP_Tx 11
String ssid="SUTHIWAS_EARTH";
String pwd ="12345678";
ESP wifi(ESP_Rx,ESP_Tx,pinEN); 
void print_debug(String data)
{Serial.print(data);} 

// Motor A

int dir1PinA = 2;

int dir2PinA = 3;

int speedPinA = 6; //   เพื่อให้ PWM สามารถควบคุมความเร็วมอเตอร์ 


// Motor B

int dir1PinB = 4;

int dir2PinB = 5;

int speedPinB = 7; // เพื่อให้ PWM สามารถควบคุมความเร็วมอเตอร์

//LCD
#include <LiquidCrystal.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup()
{
 pinMode(LED, OUTPUT);
 digitalWrite(LED,LOW); 
 Serial.begin(9600); 
 wifi.begin(9600);
 Serial.println("ESP8226"); 
 wifi.Event_debug = print_debug; 
 wifi.reset(); 
 wifi.setmode(STATION_AP); /
 if(wifi.setAP(ssid,pwd,1,WPA_WPA2_PSK)) 
 {
 wifi.multipleconnect(MULTIPLE); 
 wifi.startserver("8000"); 
 String ip = wifi.myip(); 

 Serial.begin(9600);

  //กำหนด ขา เพื่อใช้ในการควบคุมการทำงานของ  Motor ผ่านทาง L298N

  pinMode(dir1PinA,OUTPUT);

  pinMode(dir2PinA,OUTPUT);

  pinMode(speedPinA,OUTPUT);

  pinMode(dir1PinB,OUTPUT);

  pinMode(dir2PinB,OUTPUT);

  pinMode(speedPinB,OUTPUT);
}
  lcd.begin();
  lcd.backlight();
  Serial.begin(9600);
}
void loop()
{
 String data = wifi.readstringdata(); 
 if(data.length()) 
 {
 if(data=="1")
 {
  // Motor A
  analogWrite(speedPinA, 250); //ตั้งค่าความเร็ว PWM ผ่านตัวแปร ค่าต่ำลง มอเตอร์จะหมุนช้าลง
  digitalWrite(dir1PinA, HIGH);
  digitalWrite(dir2PinA, LOW);
 // Motor B
  analogWrite(speedPinB, 250); //ตั้งค่าความเร็ว PWM ผ่านตัวแปร ค่าต่ำลง มอเตอร์จะหมุนช้าลง
 digitalWrite(dir1PinB, HIGH);

digitalWrite(dir2PinB, LOW);
  
lcd.setCursor(0, 0); 
lcd.print("   Forward  ");
lcd.setCursor(0, 1); 

  }

  
 if(data=="2") 
 {
  // Motor A

 analogWrite(speedPinA, 250); //ตั้งค่าความเร็ว PWM ผ่านตัวแปร ค่าต่ำลง มอเตอร์จะหมุนช้าลง
 digitalWrite(dir1PinA, HIGH);
 digitalWrite(dir2PinA, LOW);
 // Motor B
 analogWrite(speedPinB, 250); //ตั้งค่าความเร็ว PWM ผ่านตัวแปร ค่าต่ำลง มอเตอร์จะหมุนช้าลง
digitalWrite(dir1PinB, LOW);
digitalWrite(dir2PinB, HIGH);
lcd.setCursor(0, 0); //
lcd.print("   LEFT  ");
lcd.setCursor(0, 1);
 }

 if(data=="3") 
 {
  // Motor A

  analogWrite(speedPinA, 250); //ตั้งค่าความเร็ว PWM ผ่านตัวแปร ค่าต่ำลง มอเตอร์จะหมุนช้าลง

digitalWrite(dir1PinA,LOW);
digitalWrite(dir2PinA, HIGH);
 // Motor B
 analogWrite(speedPinB, 250); //ตั้งค่าความเร็ว PWM ผ่านตัวแปร ค่าต่ำลง มอเตอร์จะหมุนช้าลง
digitalWrite(dir1PinB, HIGH);
digitalWrite(dir2PinB, LOW);
lcd.setCursor(0, 0); // 
lcd.print("  RIGHT ");
lcd.setCursor(0, 1); //
}
 if(data=="4") 
 {
  // Motor A

analogWrite(speedPinA, 250); //ตั้งค่าความเร็ว PWM ผ่านตัวแปร ค่าต่ำลง มอเตอร์จะหมุนช้าลง
digitalWrite(dir1PinA,LOW);
digitalWrite(dir2PinA, HIGH);
 // Motor B
   analogWrite(speedPinB, 250); //ตั้งค่าความเร็ว PWM ผ่านตัวแปร ค่าต่ำลง มอเตอร์จะหมุนช้าลง
digitalWrite(dir1PinB, LOW);
digitalWrite(dir2PinB, HIGH);
lcd.setCursor(0, 0); 
lcd.print("  REVERSE ");
lcd.setCursor(0, 1); 
 } 
if(data=="5")
 {
  // Motor A
  analogWrite(speedPinA, 250); //ตั้งค่าความเร็ว PWM ผ่านตัวแปร ค่าต่ำลง มอเตอร์จะหมุนช้าลง
  digitalWrite(dir1PinA, LOW);
  digitalWrite(dir2PinA, LOW);
 // Motor B
 analogWrite(speedPinB, 250); //ตั้งค่าความเร็ว PWM ผ่านตัวแปร ค่าต่ำลง มอเตอร์จะหมุนช้าลง
digitalWrite(dir1PinB, LOW);
digitalWrite(dir2PinB, LOW);
lcd.setCursor(0, 0); /
lcd.print("  STOP ");
lcd.setCursor(0, 1); 
  }
  
Serial.println(data); 
  
 }


}

ลิงก์วีดีโอการทำงาน

https://www.youtube.com/watch?v=Px3DrdTiTGE&feature=youtu.be















No comments:

Post a Comment

สรุปงานที่ 5 Internet of Things (IoT)

Internet of Things (IoT) คืออะไร           Internet of Things (IoT) คือ  "อินเตอร์เน็ตในทุกสิ่ง" หมายถึง การที่อุปกรณ์ต่างๆ ส...