BD0101 โมดูลจอแสดงผลกระบวนการ Process Display PLC MODBUS‑RTU RS485 0.8Ix4‑Digit 7 Segment Red

฿380.00

มีสินค้า

รหัสสินค้า: BD0101 หมวดหมู่: ป้ายกำกับ: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

คำอธิบาย

โมดูลแสดงผลแบบ 4 หลัก (4-digit) ขนาด 0.8 นิ้ว ที่รองรับการสื่อสาร MODBUS-RTU ผ่าน RS485 โดยมาในรูปแบบ housing module โมดูลจอแสดงผลกระบวนการ Process Display PLC MODBUS‑RTU RS485 4‑Digit Red PLC Display MODBUS‑RTU RS485 จอแสดงผล Process Display RS485 Modbus Plc  Led 4 หลัก Dc5 36 V สําหรับ PLC Modbus Rtu

PLC Display Functions Monitoring Modbus PLC

  • แรงดันไฟเลี้ยง Voltage DC5-36V
  • หน้าจอแสดงผล: 7-Segment 4 หลัก (Four-digit)
  • ขนาดตัวเลข: 0.8 นิ้ว
  • การสื่อสาร: MODBUS-RTU (RS485)
  • โปรโตคอลมาตรฐาน: 9600bps (หรือปรับได้), 8N1
  •  สามารถตั้งค่าตำแหน่งจุดทศนิยมได้และสามารถตั้งค่าอัตรารับส่งข้อมูล baud rate ได้ Baud Rate 1200bps/2400bps/4800bps/9600bps/19200bps/38400bps/57600bps/115200bps Default: 9600bps
  • Digital Display 4 Digit
  • เจาะฝังตัวเรือนมิเตอร์บนอุปกรณ์ได้
  • จอแสดงผลหลอดดิจิตอลสีแดงสี่หลักสามารถตั้งค่าความสว่างได้
  • อินเทอร์เฟซใช้เทอร์มินัลบล็อกทองแดง KF128-5.08mm
    • การใช้งาน: สำหรับแสดงค่าจาก PLC หรือ Sensor ที่สื่อสารผ่าน MODBUS

การทำงาน

  • ใช้โปรแกรม Modbus RTU (เช่น Modbus-Poll, หรือ USB-RS485 adapter) เพื่อส่งคำสั่ง
  • คำสั่งทั้งหมดใช้ Function Code 06 (Write Single Register)
  • หลังตั้งค่า Address และ Baud rate แล้ว ควรบันทึกค่าในระบบก่อนใช้งานจริง
  • รองรับการเชื่อมต่อกับ PLC หรือ Arduino ที่มี RS485-Modbus

Dimension

โครงสร้าง: มาพร้อม กล่อง (housing module) ติดตั้งง่าย

  • ขนาดจอแสดงผล 7 Segment Red 28x75mm
  • ขนาดเจาะช่อง 45x92mm
  • ขนาดรวมเคส หนา 16mm 48x96mm

Pinout Interface

  1. VCC Positive Power Supply DC5-36V
  2. GND Negative Power Supply
  3. COM Negative Power Supply
  4. D+ RS485 Data Communication A+
  5. D- RS485 Data Communication B-

การตั้งค่าอุปกรณ์

  1. MODBUS Address: ค่าเริ่มต้นโดยทั่วไปคือ 0x01
  2. บอดเรต (Baud Rate): ค่าเริ่มต้น 9600bps, 8N1 (8 บิตข้อมูล, ไม่มีพาริตี้, 1 บิตหยุด)
  3. โปรโตคอล: MODBUS RTU (Slave Mode)

การใช้งานคำสั่ง MODBUS

คำสั่ง ฟังก์ชัน อธิบาย
0x03 Read Holding Register อ่านค่าที่โมดูลเก็บไว้
0x06 Write Single Register เขียนค่าที่ต้องการให้แสดง
0x10 Write Multiple Registers เขียนค่าหลายค่า (ไม่ค่อยใช้กับโมดูลแสดงผลนี้)

ตัวอย่างการสั่งให้แสดงค่า “1234”

  • เขียนผ่าน Function Code 0x06
  • Address: 0x01
  • Register Address: เช่น 0x0001
  • Data: 0x1234
  • ใช้ HEX Format ส่งข้อมูลผ่าน RS485

ตัวอย่างการเชื่อมต่อกับ PLC หรือ Arduino

  • เชื่อมสาย RS485 จาก PLC/Arduino → A/B ของโมดูล
  • ใช้ Library MODBUS RTU หรือ RS485 Serial
  • ส่งคำสั่ง MODBUS ไปยัง Address ของโมดูลเพื่อแสดงค่า

หมายเหตุ

  • ค่าที่แสดงสามารถเป็นตัวเลข 4 หลักเท่านั้น (0000 – 9999 หรือ -999 ถึง 9999)
  • ไม่สามารถแสดงอักขระตัวอักษรได้ (เฉพาะตัวเลข)
  • หากมีสวิตช์ DIP อยู่ด้านหลัง สามารถตั้ง Address / Baudrate ได้ด้วยตัวเอง

Examples of instructions

  1. Display data  (00 32 decimal is 50, and negative numbers are represented by the inverse code. If FF FE is sent, -001 is displayed)
  2. Set the position of the decimal point the range is 01 – 03
    • 01 is the decimal point after the tens
    • 02 is the decimal point after the hundreds
    • 03 is the thousands, and only the tens and hundreds are displayed when it is negative
  3. Set brightness (range 01-07, the larger the data, the brighter)
  4. Set flash
  5. Set the baud rate (data range 0 – 7 corresponds to 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200)
  6. Set module address

Command examples 

1. Display data 

Hex 00 32 = Decimal 50, negative numbers are represented by inverse code. If  FF FE sent, -001 will be displayed

Address Function Register address Data CRC Check
0x01 0x06 High :0x00 Low :0x00 High :0x00 Low : 0x32 0x08 0x1F

The slave responds Display 50

Address Function Register address Data CRC Check
0x01 0x06 High :0x00 Low :0x00 High :0x00 Low : 0x32 0x08 0x1F

2. ตั้งค่าจุดทศนิยม Set the position of the decimal point Range is 01-03

  • 0x01 is the decimal point after tens แสดงจุดทศนิยมหลังหลักสิบ (เช่น 00.50)
  • 0x02 is the decimal point after hundreds หลังหลักร้อย (เช่น 0.50)
  • 0x03 is after thousands, only tens and hundreds are displayed for negative numbers) หลังหลักพัน (เช่น 5.0)
Address Function Register address Data CRC Check
0x01 0x06 High :0x00 Low :0x01 High :0x00 Low : 0x01 0x19 0xCA

The slave responds

Address Function Register address Data CRC Check
0x01 0x06 High :0x00 Low :0x01 High :0x00 Low : 0x01 0x19 0xCA

 

3. ตั้งค่าความสว่าง (Brightness) Set Brightness (Range 01-07, the 07 is Maximum brightness )

Set Data as 0x07 Maximum brightness ช่วง 01–07 ยิ่งตัวเลขมากยิ่งสว่าง
เช่น ตั้งค่า 03 = ความสว่างระดับ 3

Address Function Relay starting address Data CRC Check
0x01 0x06 High :0x00 Low :0x02 High :0x00 Low : 0x07 0x68 0x0B

The slave responds

Address Function Coil starting address Data CRC Check
0x01 0x06 High :0x00 Low :0x02 High :0x00 Low : 0x07 0x68 0x0B

4. ตั้งค่าการกะพริบ (Flashing)

  • 0 ไม่กะพริบ
  • ≠0 กะพริบ

Set Data as 0x00

Address Function Coil starting address Data CRC Check
0x01 0x06 High :0x00 Low :0x06 High :0x00 Low : 0x00 0x69 0xCB

The slave responds

Address Function Coil starting address Data CRC Check
0x01 0x06 High :0x00 Low :0x06 High :0x00 Low : 0x00 0x69 0xCB

5. Set the Baud rate 

Range 0 – 7 corresponds to 1200 2400 4800 9600 19200 38400 57600 115200

Set Data as 0x03 : 9600

ตั้งค่า Baud Rate

  • 0 : 1200
  • 1 : 2400
  • 2 : 4800
  • 3 : 9600 (ค่าเริ่มต้น)
  • 4 : 19200
  • 5 : 38400
  • 6 : 57600
  • 7 : 115200
Address Function Coil starting address Data CRC Check
0x01 0x06 High :0x00 Low :0x07 High :0x00 Low : 0x03 0x78 0x0A

The slave responds

Address Function Coil starting address Data CRC Check
0x01 0x06 High :0x00 Low :0x07 High :0x00 Low : 0x03 0x78 0x0A

6. ตั้งค่า Address (หมายเลขโมดูล) Set module address 0-255

Display module address as follows Set the Data as 0xFF address to 255

ตัวอย่าง ตั้งค่าเป็น 2
→ ส่งคำสั่ง 0x02 ไปยังรีจิสเตอร์ที่กำหนด
→ อุปกรณ์จะตอบกลับ Address 2 เช่นกัน

Address Function Coil starting address Data CRC Check
0x01 0x06 High :0x00 Low :0x08 High :0x00 Low : 0xFF 0x89 0xC9

The slave responds

Address Function Coil starting address Data

CRC Check

0x01 0x06 High :0x00 Low :0x08 High :0x00 Low : 0xFF 0x89

0xC9

💡 ตัวอย่างคำสั่งแสดงค่า 50 (00 32 ใน HEX)

รายการ ค่า
Address 0x01
Function 0x06
Register 0x0000
Data 0x0032
CRC 0x01F

ผลลัพธ์: จอแสดง “0050”
ถ้าส่งค่า FFFE จะเป็นการแสดงค่าลบ –001

ตัวอย่างการใช้งานร่วมกับ Arduino

https://drive.google.com/drive/folders/1JzKFab7e87QM87YFVBFxpPqqHZ52IgBS?usp=sharing

#include <SoftwareSerial.h>

SoftwareSerial SerialModbus(2, 3); // RX, TX

void setup() {
  // Initialize program Serial port at 115200 baud rate
  Serial.begin(9600);
  // Start the Modbus serial Port, for Soil_sensor
  SerialModbus.begin(9600);
}

void loop() {

  byte Display_request[] = { 0x01, 0x06, 0x00, 0x00,  0x00, 0x32, 0x08, 0x1F}; //50
 SerialModbus.write(Display_request, sizeof(Display_request));
  SerialModbus.flush();

delay(1000);
    Display_request[0] = 0x01;Display_request[1] = 0x06;Display_request[2] = 0x00;Display_request[3] = 0x00;Display_request[4] = 0x00;Display_request[5] = 0x01;Display_request[6] = 0x48;Display_request[7] = 0x0A; //1
 SerialModbus.write(Display_request, sizeof(Display_request));
  SerialModbus.flush();
delay(1000);
    Display_request[0] = 0x01;Display_request[1] = 0x06;Display_request[2] = 0x00;Display_request[3] = 0x00;Display_request[4] = 0x00;Display_request[5] = 0x02;Display_request[6] = 0x08;Display_request[7] = 0x0B; //2
 SerialModbus.write(Display_request, sizeof(Display_request));
  SerialModbus.flush();

  delay(1000);
    Display_request[0] = 0x01;Display_request[1] = 0x06;Display_request[2] = 0x00;Display_request[3] = 0x00;Display_request[4] = 0x00;Display_request[5] = 0x03;Display_request[6] = 0xC9;Display_request[7] = 0xCB; //3
 SerialModbus.write(Display_request, sizeof(Display_request));
  SerialModbus.flush();

    delay(1000);
    Display_request[0] = 0x01;Display_request[1] = 0x06;Display_request[2] = 0x00;Display_request[3] = 0x00;Display_request[4] = 0x00;Display_request[5] = 0x04;Display_request[6] = 0x88;Display_request[7] = 0x09; //4
 SerialModbus.write(Display_request, sizeof(Display_request));
  SerialModbus.flush();

      delay(1000);
    Display_request[0] = 0x01;Display_request[1] = 0x06;Display_request[2] = 0x00;Display_request[3] = 0x00;Display_request[4] = 0xFF;Display_request[5] = 0xFf;Display_request[6] = 0x88;Display_request[7] = 0x7A; //-1
 SerialModbus.write(Display_request, sizeof(Display_request));
  SerialModbus.flush();

        delay(1000);
   //Display_request[0] = { 0x01, 0x06, 0x00, 0x00,  0x00, 0x01, 0x48, 0x0A}; //1
    Display_request[0] = 0x01;Display_request[1] = 0x06;Display_request[2] = 0x00;Display_request[3] = 0x01;Display_request[4] = 0x00;Display_request[5] = 0x01;Display_request[6] = 0x19;Display_request[7] = 0xCA; //point
 SerialModbus.write(Display_request, sizeof(Display_request));
  SerialModbus.flush();

          delay(1000);
   //Display_request[0] = { 0x01, 0x06, 0x00, 0x00,  0x00, 0x01, 0x48, 0x0A}; //1
    Display_request[0] = 0x01;Display_request[1] = 0x06;Display_request[2] = 0x00;Display_request[3] = 0x01;Display_request[4] = 0x00;Display_request[5] = 0x00;Display_request[6] = 0xD8;Display_request[7] = 0x0A; //point
 SerialModbus.write(Display_request, sizeof(Display_request));
  SerialModbus.flush();



  //                              0       1     2     3     4     5     6     7
  byte Display_request_buf[8] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
  SerialModbus.readBytes(Display_request_buf, 8);

   Address           = Display_request_buf[0];
   funtion           = Display_request_buf[1];
   int Register_address  = word(Display_request_buf[2], Display_request_buf[3]);
   int Data_Word         = word(Display_request_buf[4], Display_request_buf[5]);
   int CRC_Byte1         = Display_request_buf[6];
   int CRC_Byte2         = Display_request_buf[7];

  // Print sensor parameters
  Serial.print("Address: ");
  Serial.print((Address),HEX);

  Serial.print("\tfuntion: ");
  Serial.print((funtion),HEX);

  Serial.print("\tRegister_address: ");
  Serial.print(Register_address);

  Serial.print("\tData_Word: ");
  Serial.print(Data_Word);


  Serial.print("\tCRC_Byte1: ");
  Serial.print(CRC_Byte1);
  Serial.print("\tCRC_Byte2: ");
  Serial.print(CRC_Byte2);

  Serial.println();
  
  delay(1000);
}

โมดูลจอแสดงผลกระบวนการ Process Display PLC MODBUS

 

 

รีวิว

ยังไม่มีบทวิจารณ์

เฉพาะลูกค้าที่เข้าสู่ระบบ และเคยซื้อสินค้าชิ้นนี้แล้วเท่านั้น ที่เขียนบทวิจารณ์ได้