Her er en motorstyring for start og stopp av to motorer med felles stopp. Motorene kan enten startes og stoppes fra lokalt betjeningspanel eller fra mobiltelefon via Blynk-applikasjon.
Man må også lage en app på mobiltelefonen pluss at man må konfigurere riktig port i filen C:\Users\Win\Documents\Arduino\libraries\Blynk\scripts\blynk-ser.bat
Skisse av oppkobling 5V del (230V Del kommer i tillegg):
Programkode for Arduino:
#include <BlynkSimpleStream.h>
char auth[] = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
void setup()
{
pinMode(2, INPUT);
pinMode(3, INPUT);
pinMode(4, INPUT);
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
Serial.begin(9600);
Blynk.begin(Serial, auth);
}
int rstart1;
BLYNK_WRITE(V1)
{
rstart1 = param.asInt();
}
int rstart2;
BLYNK_WRITE(V2)
{
rstart2 = param.asInt();
}
int rstop;
BLYNK_WRITE(V3)
{
rstop = param.asInt();
}
void loop()
{
Blynk.run();
if (digitalRead(2) || rstart1){digitalWrite(9,1);}
if (digitalRead(3) || rstart2){digitalWrite(10,1);}
if (digitalRead(4) || rstop){digitalWrite(9,0); digitalWrite(10,0); }
if (digitalRead(9)){Blynk.virtualWrite(V4, 255);}
if (!digitalRead(9)){Blynk.virtualWrite(V4, 0);}
if (digitalRead(10)){Blynk.virtualWrite(V5, 255);}
if (!digitalRead(10)){Blynk.virtualWrite(V5, 0);}
delay(20);
}
Vi vil også ha behov for Blynk dokumentasjon i forbindelse med utvikling av selve Mobil-appen.
Her er en forbedret programkode som bare oppdaterer 1 gang i sekundet.
#include <BlynkSimpleStream.h>
char auth[] = "zbjoXyfO2Za3FtFLSrD_x52HXBzo__vd";
BlynkTimer timer;
// Read start-1 signal from phone
int rstart1;
BLYNK_WRITE(V1)
{
rstart1 = param.asInt();
}
// Read Start-2 signal from phone
int rstart2;
BLYNK_WRITE(V2)
{
rstart2 = param.asInt();
}
// Read stop signal from phone
int rstop;
BLYNK_WRITE(V3)
{
rstop = param.asInt();
}
void myTimerEvent()
{
if (digitalRead(2) || rstart1){digitalWrite(9,1);}
if (digitalRead(3) || rstart2){digitalWrite(10,1);}
if (digitalRead(4) || rstop){digitalWrite(9,0); digitalWrite(10,0);}
// Write confirmation feedback on V4 and V5:
if (digitalRead(9)){Blynk.virtualWrite(V4, 255);}
else {Blynk.virtualWrite(V4, 0);}
if (digitalRead(10)){Blynk.virtualWrite(V5, 255);}
else {Blynk.virtualWrite(V5, 0);}
}
void setup()
{
pinMode(2, INPUT);
pinMode(3, INPUT);
pinMode(4, INPUT);
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
Serial.begin(9600);
Blynk.begin(Serial, auth);
timer.setInterval(1000L, myTimerEvent);
}
void loop()
{
Blynk.run();
timer.run();
}
For styrestrøm og hovedstrøm, se denne linken.

