Kamis, 18 Oktober 2018

Komunikasi Serial RS485, Dari PC ke Arduino.

Hallo sobat Arduino Indonesia, pada postingan kali ini kita akan membangun sebuah komunikasi serial RS485 antara PC ke Arduino dengan menggunakan modul RS485 TTL Converter. Menurut datasheet panjang kabel yang bisa kita gunakan menggunakan komunikasi ini bisa mencapai 1,200m. namun sejauh ini yang sudah pernah dicoba hanya sepanjang 1m.

Hardware yang kita gunakan antara lain:
1. Arduino NANO 4 buah sebagai slave.
2. Modul MAX485 4 buah.
3. USB to RS485 1 buah.
4. PC/Notebook sebagai master.

Software:
- Arduino IDE (saya menggunakan versi 1.8.3)

Berikut rangkaian schematicnya:


Oke, sekarang langsung saja ke program:

#include <SoftwareSerial.h> 

#define SSerialRX        10  //Pin R1 pada RS485 TTL Converter 
#define SSerialTX        11  //Pin D1 pada RS485 TTL Converter 
#define SSerialTxControl 3   //Pin DE dan RE pada RS485 TTL Converter

#define RS485Transmit    HIGH 
#define RS485Receive     LOW  

String inputString = "";
boolean stringComplete = false;

SoftwareSerial RS485Serial(SSerialRX, SSerialTX);

void setup() {
// put your setup code here, to run once:
pinMode(SSerialTxControl, OUTPUT);
digitalWrite(SSerialTxControl, RS485Receive);
RS485Serial.begin(115200);   //setting baudrate
inputString.reserve(200);
}

void serialEvent() {
  while (RS485Serial.available()) {
    char inChar = (char)RS485Serial.read();
    inputString += inChar;
    if (inChar == '\n') {
      stringComplete = true;
      digitalWrite(SSerialTxControl, RS485Transmit);
    }
  }
}

void loop() {
// put your main code here, to run repeatedly:
if (RS485Serial.available()> 0 ){
    inputString = RS485Serial.readString();
    String Start = inputString.substring(0,10);
    
    digitalWrite(SSerialTxControl, RS485Transmit);
    RS485Serial.println("OK");
    RS485Serial.print("Data : ");
    RS485Serial.println(Start);
    digitalWrite(SSerialTxControl, RS485Receive);  
    }}

Berikut ini merupakan hasil dari Serial Monitor pada Arduino IDE:




4 komentar:

  1. Kalo mau komunikasi arduino ke power logic pm5350 bagaimana?

    BalasHapus
  2. Gan..boleh minta no wa or emailnya
    kirim ke mardiyansah06@gmail.com

    BalasHapus