Arduino - Cliente TCP

Neste tutorial, vamos aprender a programar o Arduino Uno R4 WiFi como Cliente TCP e trocar dados com um Servidor TCP..

Arduino Cliente TCP

Código Arduino

/* * Este código de Arduino foi desenvolvido por pt.newbiely.com * Este código de Arduino é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/arduino/arduino-tcp-client */ #include <WiFiS3.h> const char* WIFI_SSID = "YOUR_WIFI_SSID"; // CHANGE TO YOUR WIFI SSID const char* WIFI_PASSWORD = "YOUR_WIFI_PASSWORD"; // CHANGE TO YOUR WIFI PASSWORD const char* TCP_SERVER_ADDR = "192.168.0.26"; // CHANGE TO TCP SERVER'S IP ADDRESS const int TCP_SERVER_PORT = 1470; WiFiClient TCP_client; void setup() { Serial.begin(9600); Serial.println("Arduino: TCP CLIENT"); // check for the WiFi module: if (WiFi.status() == WL_NO_MODULE) { Serial.println("Communication with WiFi module failed!"); // don't continue while (true) ; } String fv = WiFi.firmwareVersion(); if (fv < WIFI_FIRMWARE_LATEST_VERSION) { Serial.println("Please upgrade the firmware"); } Serial.print("Attempting to connect to SSID: "); Serial.println(WIFI_SSID); // attempt to connect to WiFi network: while (WiFi.begin(WIFI_SSID, WIFI_PASSWORD) != WL_CONNECTED) { delay(10000); // wait 10 seconds for connection: } Serial.print("Connected to WiFi "); Serial.println(WIFI_SSID); // connect to TCP server if (TCP_client.connect(TCP_SERVER_ADDR, TCP_SERVER_PORT)) { Serial.println("Connected to TCP server"); TCP_client.write("Hello!"); // send to TCP Server TCP_client.flush(); } else { Serial.println("Failed to connect to TCP server"); } } void loop() { // Read data from server and print them to Serial if (TCP_client.available()) { char c = TCP_client.read(); Serial.print(c); } if (!TCP_client.connected()) { Serial.println("Connection is disconnected"); TCP_client.stop(); // reconnect to TCP server if (TCP_client.connect(TCP_SERVER_ADDR, TCP_SERVER_PORT)) { Serial.println("Reconnected to TCP server"); TCP_client.write("Hello!"); // send to TCP Server TCP_client.flush(); } else { Serial.println("Failed to reconnect to TCP server"); delay(1000); } } }

Passo Rápido

Para fazer isso, siga os passos abaixo:

  • Conecte o Arduino ao seu PC por meio de um cabo USB Type-C
  • Instale um programa de servidor TCP, como o ezTerm
  • Abra o programa de servidor TCP e configure-o como Servidor TCP; em seguida, clique no botão Listen
ezTerm Servidor TCP
  • Abra o Prompt de Comando no seu PC.
  • Encontre o endereço IP do seu PC executando o comando abaixo:
ipconfig
  • A saída será parecida com esta:
Command Prompt
C:\WINDOWS\system32>ipconfig Windows IP Configuration Ethernet adapter: Subnet Mask . . . . . . . . . . . : 255.0.0.0 IPv4 Address. . . . . . . . . . . : 192.168.0.26 Subnet Mask . . . . . . . . . . . : 255.255.255.0 Default Gateway . . . . . . . . . :
  • Altere o endereço IP do seu Servidor TCP (o seu PC) no código do Arduino. No exemplo acima, ele está indicado por 192.168.0.26.
  • Compile e faça upload do código para a placa Arduino clicando no botão Upload na Arduino IDE.
  • Abra o Serial Monitor
  • Você verá o seguinte no Serial Monitor
∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
Arduino Uno
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'Arduino Uno' on 'COM15')
New Line
9600 baud
Connected to WiFi YOUR_WIFI_SSID Connected to TCP server
Ln 11, Col 1
Arduino Uno on COM15
2
  • Depois de se conectar ao servidor TCP, o Arduino enviará um "Hello!" para o servidor TCP, e você verá esse texto no programa do servidor TCP.
Arduino Serial para TCP
  • Digite alguns dados no programa de servidor TCP para enviá-los ao Arduino via TCP.
  • Se tudo der certo, você verá os dados no Serial Monitor.
∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
Arduino Uno
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'Arduino Uno' on 'COM15')
New Line
9600 baud
Connected to WiFi YOUR_WIFI_SSID Connected to TCP server 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ
Ln 11, Col 1
Arduino Uno on COM15
2

※ NOSSAS MENSAGENS

  • Fique à vontade para compartilhar o link deste tutorial. Porém, por favor, não use nosso conteúdo em outros sites. Investimos muito esforço e tempo para criar este conteúdo, por favor respeite nosso trabalho!