Raadi Koodka

Koodka Arduino iyo Fiidiyowga Xakamaynta Amarka Xariiqda PowerShell ee Relay iyada oo loo marayo USB

Koodka Arduino iyo Fiidiyowga Xakamaynta Amarka Xariiqda PowerShell ee Relay iyada oo loo marayo USB

Cashigarkani, waxaan ku baran doonaa sida loo xakameeyo relay iyadoo la isticmaalayo Arduino iyo module USB ilaa UART, dhammaan iyada oo loo marayo amarrada Windows PowerShell. Qalabkan wuxuu kuu ogolaanayaa inaad shido ama damiso laydh meel fog iyadoo la soo diraayo amarro gaar ah iyada oo loo marayo khadka amarrada. Markaad dhammayso hagahan, waxaad yeelan doontaa nidaam shaqeeya oo awood u leh inuu xakameeyo qalabka AC si badbaado leh oo wax ku ool ah.

CP2102 usb to UART with relay

Waxaan isticmaali doonaa awoodaha isgaarsiinta taxanaha ah ee Arduino si uu u dhageysto amarrada laga soo diro PowerShell. Amarrada gaarka ah ee la isticmaali doono waxay noqon doonaan tirooyin isku mid ah kuwaas oo u dhigma daminta iyo shidista relay-ga. Mashruucan wuxuu u baahan yahay si taxaddar leh loo maareeyo danabka AC, sidaas darteed waa in la ilaaliyaa badbaadada inta lagu jiro habka. Si faahfaahin dheeri ah loo helo, hubi inaad daawato fiidiyowga oo dhan (fiidiyowga 00:00).

Qalabka La Sharxay

Qaybaha ugu muhiimsan ee ku lug leh mashruucan waxaa ka mid ah Arduino board-ka, module-ka USB ilaa UART, iyo relay-ga. Arduino wuxuu u shaqeeyaa sida maskaxda hawlgalka, isagoo farsameeya amarrada taxanaha ah oo xakameeya relay-ga si waafaqsan. Module-ka USB ilaa UART wuxuu fududeeyaa isgaarsiinta u dhaxaysa Arduino iyo kombuyuutarkaaga, isagoo u oggolaanaya gelinta amarrada iyada oo loo marayo PowerShell.

Relay-ga wuxuu u shaqeeyaa sida furaha xakameeya socodka korontada ee iftiinka. Marka relay-ga la hawlgeliyo, wuxuu xidhaa wareegga, isagoo u oggolaanaya in korontadu socoto oo iftiinku shido. Marka la damiyo, wuxuu furaa wareegga, isagoo gooya korontada oo damiya iftiinka. Tani waxay u oggolaanaysaa xakamayn badbaado leh oo qalabka danab sare ah laga bilaabo nidaam danab hoose ah.

Faahfaahinta Xogta

Soo saarahaFTDI
Nambarka qaybtaFT232R
Danabka Logic/IO3.3 V / 5 V
Danabka sahayda4.5 V ilaa 5.5 V
Korontada soo baxa (kanal kasta)50 mA
Korontada ugu sarreysa (kanal kasta)100 mA
Hagaha soo noqnoqoshada PWMMa jiro
Heerarka caqabadaha gelinta0.3 V (hoose), 0.7 V (sare)
Hoos u dhaca danabka / RDS(on) / dheregsanaanta0.5 V ugu badnaan
Xadka kulaylka125 °C
Baakad32 LQFP
Qoraalo / noocyo kaleUSB ilaa UART beddele

  • Hubi in heerarka danabku ay ku habboon yihiin relay-ga iyo module-ka UART.
  • Isticmaal kulayl-qabte haddii relay-ga la filayo inuu qaado culaysyo sare.
  • Labo jeer hubi dhammaan xiriirada ka hor intaadan shidin nidaamka.
  • Ka fogee module-ka qoyaanka iyo walxaha korantada sameeya.
  • Isticmaal dhul wadaag ah dhammaan qaybaha si looga fogaado korontada kacsan.

Tilmaamaha Xiritaanka

Arduino wiring for FTDI usb with relay
Arduino wiring for FTDI usb with relay
Arduino wiring for CP2102 usb to UART with relay
Arduino wiring for CP2102 usb to UART with relay

Bilow adigoo ku xiraya pin-ka VCC ee module-ka relay-ga pin-ka 5V ee Arduino-ga. Marka xigta, ku xir pin-ka GND ee relay-ga mid ka mid ah pin-yada dhulka ee Arduino-ga. Pin-ka xakamaynta (oo lagu calaamadeeyay IN ama wax la mid ah) ee relay-ga waa in lagu xiraa pin-ka dhijitaalka ah ee 8 ee Arduino-ga.

Module-ka USB ilaa UART, ku xir pin-ka TX pin-ka RX ee Arduino-ga iyo pin-ka RX ee module-ka pin-ka TX ee Arduino-ga. Hubi inaad ku xirto pin-ka dhulka ee module-ka USB isla dhulka Arduino-ga si loo hubiyo tixraac wadaag ah. Qalabkani wuxuu u oggolaanayaa isgaarsiin aan kala go 'lahayn oo u dhaxaysa Arduino iyo kombuyuutarkaaga iyada oo loo marayo PowerShell.

Tusaalooyinka Koodhka & Sharaxaad

byte RX_Value = 0;        // kaydiya byte-ka la helay
#define relay 8 // pin 8 ee relay-ga
int comON = 6; // koodhka shidista iftiinka
int comOFF = 2; // koodhka daminta iftiinka

Qaybtan, waxaan ku qeexaynaa doorsoome RX_Value si uu u hayo amarka laga helo kormeerka taxanaha ah. relay waxaa loo dejiyay pin 8, waxaanan qeexaynaa laba amar: comON oo loogu talagalay shidista iftiinka iyo comOFF oo loogu talagalay daminta.

FT232-AZ-USB-to_TTL-serial-adapter
void setup() {
  Serial.begin(9600); // Bilow isgaarsiinta taxanaha ah 9600 baud
  pinMode(relay, OUTPUT); // Deji pin-ka relay-ga sida soo saar
  digitalWrite(relay, HIGH); // Dami relay-ga marka hore
}

Hawlaha setup(), waxaan bilaabaynaa isgaarsiinta taxanaha ah 9600 baud, taas oo waa inay la mid noqotaa dejinta PowerShell. Pin-ka relay-ga waxaa loo qaabeeyay sida soo saar, waxaanan u dejinay HIGH si loo hubiyo in relay-ga uu dami yahay marka barnaamijku bilaabmo.

Wirig relay module to AC load
if (Serial.available()) {
    RX_Value = Serial.read(); // Akhri byte-ka soo socda
    if (RX_Value == comON) {
        digitalWrite(relay, LOW); // Shiid relay-ga
    } else if (RX_Value == comOFF) {
        digitalWrite(relay, HIGH); // Dami relay-ga
    }
}

Qaybtan koodhka ah waxay muujinaysaa sida barnaamijku u dhageysto xogta taxanaha ah ee soo socota. Haddii amar la helo oo u dhigma comON, relay-ga waa la hawlgeliyay, isagoo shidaya iftiinka. Taa beddelkeeda, haddii comOFF la helo, relay-ga waa la damiyay, isagoo damiya iftiinka. Loop-kani wuu sii socdaa, isagoo u oggolaanaya xakamayn degdeg ah oo ka imanaysa PowerShell.

Muuujin / Waxa Lagu Filan Karaa

Marka qalabku dhammaystiranyahay oo koodhka la soo geliyo, waxaad awood u yeelan doontaa inaad furto PowerShell oo aad soo dirto amarrada si aad u xakamayso iftiinka. Qorista amarka u dhigma waa inay si degdeg ah u kicisaa relay-ga, iyadoo shidaysa ama daminaysa iftiinka sidaa rabto. Ka digtoonow markaad maareyso qalabka AC, hubi in aysan jirin fiilooyin qaawan oo soo baxaya inta lagu jiro tijaabinta.

Waqtiyada Fiidiyowga

  • 00:00 - Hordhac iyo dulmar mashruuca
  • 02:30 - Sharaxaadda xiritaanka
  • 05:00 - Sharaxaadda koodhka
  • 08:15 - Muujinta amarrada PowerShell
  • 10:45 - Gunaanad iyo talooyin badbaado

Sawirro

Wirig relay module to AC load
Wirig relay module to AC load
FT232-AZ-USB-to_TTL-serial-adapter
FT232-AZ-USB-to_TTL-serial-adapter
Arduino wiring for FTDI usb with relay
Arduino wiring for FTDI usb with relay
CP2102 usb to UART with relay
CP2102 usb to UART with relay
CP2102 usb to UART with relay
CP2102 usb to UART with relay
CP2102 usb to UART with relay
CP2102 usb to UART with relay
Arduino wiring for CP2102 usb to UART with relay
Arduino wiring for CP2102 usb to UART with relay
91-Arduino code to control a relay via USB from the command line using Windows PowerShell
Luqadda: C++
++
/*
 * This Arduino code is to read and decode serial monitor
 * code sent from USB to UART or USB to UART FTDI chip
 * commands sent from Windows PowerShell or other systems commands.
 * When the code is detected and matched with the present codes
 * for example, 6 is to turn the relay ON and 2 to turn OFF the relay,
 * in turn, will turn ON the AC bulb.
 Watch the video for this code: https://youtu.be/HzLCkzX5q3w
 * 
 */
// Written by Ahmad S. Robojax at 19:11 on Saturday, April 01, 2018
byte RX_Value = 0;        // stores received byte

#define relay 8 // pin 8 for relay

int comON = 6;//code to turn ON the light
int comOFF = 2;// code to turn OFF the light

void setup() {
  // Robojax code for USB command to Relay
  Serial.begin(9600);
  while (!Serial) {
    ; // wait for serial port to connect. Needed for native USB port only
  }

  pinMode(relay,OUTPUT);// define pin 8 as output
  digitalWrite(relay,HIGH);// turn the relay OFF
  Serial.println("Robojax USB Command");
}

void loop() { // run over and over
  // Robojax code for USB command to Relay
  if (Serial.available()) {


    RX_Value = Serial.read();
    if(Serial.read() == comON)
    {
          digitalWrite(relay,LOW);// turn the relay ON
          Serial.print("Code to Turn ON:");
          Serial.println(RX_Value);// print the received command
    }
    if(RX_Value == comOFF)
    {
         digitalWrite(relay,HIGH);// turn the relay OFF
         Serial.print("Code to Turn OFF:");
         Serial.println(RX_Value); // print the received command     
    }

  }
}// loop

Kheyraadka & Tixraacyada

Wali wax kaydsan ah oo weli ma jiro.

Faylasha📁

Faylka Fritzing

Faylal kale