Translate
Monitor Suhu Tubuh Non Contact dan BPM ONLINE Blynk
Monitor Suhu Tubuh Non Contact (Measure Body Temperature) IOT Blynk
Pada kesempatan kali ini saya akan menjelaskan mengenai bagaimana cara membuat sebuah alat yang dapat digunakan untuk mengukur suhu tubuh secara non contact atau tidak bersentuhan, alat ini sangat cocok digunakan untuk kondisi negara dilanda pandemi dikarenakan dibutuhkan alat yang bisa digunakan untuk mengukur suhu tubuh tanpa disentuh. alat ini berbasis IOT dengan aplikasi Blynk sehingga untuk jarak monitor bisa sangat jauh dan sangat cocok digunakan pada suatu gedung atau supermarket. untuk lebih jelasnya berikut adalah program dan daftar komponennya.
a. Wemos D1
b. Sensor Suhu Non Contact MLX90614
c. LCD + I2C
d. Program Arduino IDE
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <Adafruit_MLX90614.h>
#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
#include <SimpleTimer.h>
#include <SPI.h>
LiquidCrystal_I2C lcd(0x27, 16,2);
Adafruit_MLX90614 mlx = Adafruit_MLX90614();
// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[ ] = "kjhkjKJGKHGOIUIgghgcxgfgfcbgdgfsjgfj";
// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[ ] = "MyHotspotku";
char pass[ ] = "123456789";
SimpleTimer timer;
float TargetC;
const int speakerPin = 12;
int ledmerah = 14;
int ledhijau = 2;
void sendSensor()
{
Blynk.virtualWrite(V5, TargetC);
delay(1000);
}
void setup(){
mlx.begin();
lcd.clear();
lcd.begin();
Serial.begin(9600);
lcd.noCursor();
pinMode(ledmerah,OUTPUT);
pinMode(ledhijau,OUTPUT);
pinMode(speakerPin, OUTPUT);
digitalWrite(ledmerah,LOW);
digitalWrite(ledhijau,LOW);
Blynk.begin(auth, ssid, pass);
timer.setInterval(1000L, sendSensor);
}
void loop(){
TargetC = mlx.readObjectTempC();
lcd.setCursor(0,0);
lcd.print("Temp= ");
lcd.print(TargetC);
lcd.println(" 'C ");
if (TargetC <= 37.5) {
digitalWrite(speakerPin, LOW);
digitalWrite(ledmerah,LOW);
digitalWrite(ledhijau,HIGH);
}
if (TargetC > 37.5 ) {
digitalWrite(speakerPin, HIGH);
digitalWrite(ledmerah,HIGH);
digitalWrite(ledhijau,LOW);
delay (3000);
}
Blynk.run();
timer.run();
}
e. VIDEO HASILNYA
Monitor Arus AC Sensor SCT-013 Komunikasi Wireless LoRa Module ARDUINO
Kendali Kursi Roda (Wheel Chair) Menggunakan Joystick / Thumb stick Driver IBT2 Control Speed PWM Arduino
Kendali Kursi Roda (Wheel Chair) Menggunakan Joystick / Thumb stick Driver IBT2 Control Speed PWM Arduino
Pada kesempatan kali ini saya akan menjelaskan mengenai bagaimana membuat sebuah alat untuk mengendalikan motor DC yang memiliki torsi dan arus yang besar karena digunakan untuk kursi roda yang memiliki beban kerja yang lumayan besar maka dari itu dibutuhkan 2 buah driver ibt2 dan juga untuk kendali arah dan kecepatan menggunakan joystick atau thumb stick. untuk lebih jelasnya berikut adalah komponen dan programnya.
a. Arduno Nano
b. Driver IBT2
c. Motor DC
d. Joystick / Thumb Stick
int pinpwma = 9;
int pinpwmb = 10;
//motor kiri
int pinpwmc = 5;
int pinpwmd = 6;
int speedx;
int speedx1;
void setup() {
Serial.begin(9600);
pinMode(pinpwma, OUTPUT);
pinMode(pinpwmb, OUTPUT);
pinMode(pinpwmc, OUTPUT);
pinMode(pinpwmd, OUTPUT);
}
void loop() {
int dataadc1 = analogRead(A0);
int dataadc2 = analogRead(A1);
//Serial.print(dataadc1);
//Serial.print(" ");
//Serial.println(dataadc2);
speedx = map(dataadc1, 450, 1010, 0, 255);
speedx1 = map(dataadc2, 450, 1010, 0, 255);
if(speedx > 255){
speedx = 255;
}
if(speedx1 > 255){
speedx1 = 255;
}
//maju
if(speedx1 > 50){
Serial.println("maju");
speedx1 = speedx1 * 1;
analogWrite(pinpwma,speedx);
analogWrite(pinpwmb,speedx1);
analogWrite(pinpwmc,speedx);
analogWrite(pinpwmd,speedx1);
}
//mundur
if(speedx1 < 0){
Serial.println("mundur");
speedx1 = speedx1 * -1;
analogWrite(pinpwma,speedx1);
analogWrite(pinpwmb,speedx);
analogWrite(pinpwmc,speedx1);
analogWrite(pinpwmd,speedx);
}
if(speedx > 50){
Serial.println("kiri");
analogWrite(pinpwma,0);
analogWrite(pinpwmb,0);
analogWrite(pinpwmc,0);
analogWrite(pinpwmd,speedx);
}
if(speedx < 0){
Serial.println("kanan");
speedx = speedx * -1;
analogWrite(pinpwma,0);
analogWrite(pinpwmb,speedx);
analogWrite(pinpwmc,0);
analogWrite(pinpwmd,0);
}
if((speedx > 0)&&(speedx < 50)&&(speedx1 > 0)&&(speedx1 < 50)){
analogWrite(pinpwma,0);
analogWrite(pinpwmb,0);
analogWrite(pinpwmc,0);
analogWrite(pinpwmd,0);
}
Serial.print(speedx);
Serial.print(" ");
Serial.println(speedx1);
delay(100);
}
f. VIDEO HASILNYA