การใช้งาน 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 เป็นใช้ได้
มาเขียนโปรแกรมติดต่อ 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
Reviewed by amaloma
on
ตุลาคม 09, 2564
Rating:
ไม่มีความคิดเห็น