การใช้งาน USB to RS-232 Serial Port บน Raspberry pi ด้วย Node js

 


ในวงการ Embedded หรือ Microcontroller อุปกรณ์ต่อพ่วงส่วนใหญ่จะใข้การติดต่อแบบ RS-232/RS-485 ในการคุนกัน ดังนั้นจำเป็นสำหรับนักพัฒนา Maker ที่ต้องศึกษาเพื่อใช้งาน

RS-232 คืออะไร?
การสื่อสารโทรคมนาคม RS-232 เป็นมาตรฐานที่เริ่มใช้ในปี 1960 สำหรับการส่งข้อมูลการสื่อสารแบบอนุกรม มันกำหนดสัญญาณอย่างเป็นทางการที่เชื่อมต่อระหว่าง DTE (อุปกรณ์ปลายทางข้อมูล) เช่น เทอร์มินัลคอมพิวเตอร์ และ DCE (อุปกรณ์ปลายวงจรข้อมูลหรืออุปกรณ์สื่อสารข้อมูล) เช่น โมเด็ม มาตรฐานกำหนดลักษณะทางไฟฟ้าและจังหวะเวลาของสัญญาณ  มาตรฐาน RS-232 มักใช้ในพอร์ตอนุกรมของคอมพิวเตอร์และยังคงมีอยู่อย่างแพร่หลาย ใช้ในอุปกรณ์สื่อสารอุตสาหกรรม wikipedia

มาใช้งาน USB to RS-232 บน Raspberry pi

ในที่นี้ผมจะใช้ usb to rs-232 สองตัวในการทดสอบ

1. เสียบ usb to rs-232 ทั้งสองตัวเข้ากับ Port USB ของ Raspberry pi

2. ดูว่า pi ของเราเห็นอุปกรณ์หรือยัง พิมพ์คำสั่ง
lsusb
ls /dev/ttyUSB*

usb to rs-232 จะเห็นเป็น ttyUSBxx

3. ติดตั้งโปรแกรม screen ใช้ทดสอบรับส่งข้อมูล
sudo apt install screen

Screen คือ โปรแกรม  terminal emulation แบบ GNU open source สามารถนำมาใช้รับส่งข้อมูล Serial ได้

 

4. เปิด Terminal สองตัวพิมพ์คำสั่ง screen port_name baud_rate 

screen /dev/ttyUSB0 115200 #first terminal
screen /dev/ttyUSB0 115200 #second terminal


5. ลองพิมพ์ใน Termina1 1 จะออก ที่ terminal 2 และถ้าพิมที่ terminal 2 จะออกที่ terminal 1 เป็นใช้ได้


ออกจาก screen กด ctrl+a k y

มาเขียนโปรแกรมติดต่อ Serial port ด้วย Node js กัน

ถ้ายังไม่ลง Node js ดูบทความ 

1. สร้างโฟลเดอร์ของโปรเจค จากนั้น init โปรเจค
mkdir serial-port-test
cd serial-port-test
npm init -y


2. ติดตั้ง module serialport
npm add serialport


3. สร้างไฟล์ app.js เพื่อเขียนโปรแกรม จากนั้นกด Save

const SerialPort = require('serialport')
const port = new SerialPort('/dev/ttyUSB0', {
  baudRate: 115200
})

port.write('main screen turn on', function(err) {
  if (err) {
    return console.log('Error on write: ', err.message)
  }
  console.log('message written')
})

// Open errors will be emitted as an error event
port.on('error', function(err) {
  console.log('Error: ', err.message)
})

// Switches the port into "flowing mode"
port.on('data', function (data) {
  console.log('Data:', data)
})


4. เปิด Terminal สองพิมพ์คำสั่ง 
screen /dev/ttyUSB1 115200 #second terminal

จากนั้นรันโปรแกรมพิมพ์คำสั่งที่ Terminal 1
node app


เมื่อเรารันโปรแกรมจะส่งข้อมูลไปยัง Terminal 2 และเมื่อเราพิมพ์ใน Terminal 2 ส่งข้อมูลไปยัง Terminal 1

ฝากกดติดตาม blog นี้ด้วยนะครับ
ติดตามพูดคุยได้ที่ facebook: Bulantech

การใช้งาน USB to RS-232 Serial Port บน Raspberry pi ด้วย Node js การใช้งาน USB to RS-232 Serial Port บน Raspberry pi ด้วย Node js Reviewed by amaloma on ตุลาคม 09, 2564 Rating: 5

ไม่มีความคิดเห็น

Advertisement

Main Ad