เครื่องคำนวณ / ส่งและรับโปรแกรม NC ผ่าน RS-232

เครื่องคำนวณ

ส่งและรับโปรแกรม NC ผ่าน RS-232

ส่งโปรแกรมเข้าเครื่องและรับโปรแกรมจากเครื่องผ่านสาย USB to RS-232 จากเบราว์เซอร์ รองรับ XON/XOFF และ RTS/CTS โปรแกรมส่งตรงจากเบราว์เซอร์ไปที่พอร์ต ไม่ผ่านเซิร์ฟเวอร์

การเชื่อมต่อ

ตรวจกับคู่มือเครื่องก่อนเสมอ เครื่องยี่ห้อและรุ่นเดียวกันอาจตั้งไว้ต่างกัน อ่านค่าจริงจากพารามิเตอร์ I/O ของเครื่อง ดูตำแหน่งการตั้งค่าของแต่ละยี่ห้อ

ยังไม่ได้เชื่อมต่อ
หรือลากไฟล์มาวางที่นี่
โปรแกรม—
ขนาดที่ส่ง—
เวลาส่งโดยประมาณ—
เชื่อมต่อพอร์ตและเปิดไฟล์ก่อน

สิ่งที่ต้องมี

  • เบราว์เซอร์ที่มี Web Serial API ถ้าตรวจไม่พบจะแจ้งด้านบน เบราว์เซอร์และรุ่นที่รองรับเปลี่ยนไปตามเวลา ดูตารางล่าสุดที่ MDN หรือ caniuse หน้านี้ต้องเปิดผ่าน HTTPS และเบราว์เซอร์จะขึ้นหน้าต่างให้เลือกทุกครั้งว่าจะใช้พอร์ตไหนเมื่อกดเชื่อมต่อพอร์ต
  • สาย USB to RS-232 ติดตั้งไดรเวอร์ของชิปในสาย (เช่น FTDI หรือ Prolific) ให้เรียบร้อย ถ้าคอมพิวเตอร์มีพอร์ต COM ในตัวก็ใช้ได้เช่นกัน
  • สายสัญญาณที่ต่อขาถูกต้อง เครื่องกับคอมพิวเตอร์ต่างเป็นอุปกรณ์ปลายทาง จึงต้องสลับขาส่งกับขารับ (null modem) และถ้าใช้ RTS/CTS ต้องสลับคู่นั้นด้วย ขั้วต่อของเครื่องอาจเป็น DB25 หรือ DB9 ผังขาและการต่อสายทั้งสองแบบสำหรับพอร์ต DB25 ของ Fanuc อยู่ที่หน้าอ้างอิงการต่อสาย RS-232 เครื่องแบบอื่นให้ดูผังขาในคู่มือเครื่อง
  • การตั้งค่าที่ตรงกันทั้งสองฝั่ง Baud rate, Data bits, Parity, Stop bits และ Flow control ต้องตรงกับพารามิเตอร์ I/O ของเครื่อง ค่าในรายการ ค่าที่พบบ่อย เป็นค่าตั้งต้นที่พบบ่อยเท่านั้น เครื่องบางยี่ห้อ เช่น Mazak และ Mitsubishi บางรุ่น ตั้งฝั่งเครื่องเป็น 8 บิต ขณะที่คอมพิวเตอร์ตั้ง 7 บิตกับ Even parity เพราะชุดควบคุมนับ parity bit เป็นบิตข้อมูล

ขั้นตอนบนชุดควบคุมแบบ Fanuc

ส่งโปรแกรมเข้าเครื่อง

  1. ที่เครื่อง เลือกโหมด EDIT กด PROG แล้วกด (OPRT) READ และ EXEC เครื่องรอรับข้อมูล บนจอแสดง LSK กะพริบ
  2. ที่หน้านี้ เปิดไฟล์แล้วกด ส่ง เครื่องเริ่มรับเมื่อพบ % ตัวแรก และจบเมื่อพบ % ตัวที่สอง

รับโปรแกรมจากเครื่อง

  1. ที่หน้านี้ กด เริ่มรับ ก่อน
  2. ที่เครื่อง เลือกโหมด EDIT กด PROG เลือกโปรแกรม แล้วกด (OPRT) PUNCH และ EXEC
  3. เมื่อได้รับครบ บันทึกไฟล์ หรือเปิดใน Backplot เพื่อดูแนวทางเดินมีด

ชื่อปุ่มและลำดับต่างกันไปตามรุ่นของชุดควบคุม ดูหัวข้อ input/output ในคู่มือการใช้งานของเครื่อง

ตั้งค่าที่เครื่องได้ที่ไหน

ตารางนี้รวบรวมจากแหล่งข้อมูลทั่วไป ไม่ใช่คู่มือของเครื่องคุณ หมายเลขพารามิเตอร์และค่าตั้งต้นต่างกันไปตามรุ่นและรุ่นซอฟต์แวร์ของชุดควบคุม ตรวจกับคู่มือเครื่องและอ่านค่าจริงจากเครื่องก่อนเลือกค่าในหน้านี้ แล้วลองส่งโปรแกรมสั้น ๆ สามสี่บรรทัดก่อนส่งโปรแกรมจริง

ชุดควบคุมตำแหน่งการตั้งค่าข้อสังเกต
Fanuc 0i / 16i / 18i / 21iพารามิเตอร์ 0020 เลือกช่อง I/O สำหรับช่อง 0: 0101 (บิต 0 คือ Stop bits) 0102 (ชนิดอุปกรณ์) 0103 (Baud rate: 10 = 4800, 11 = 9600)XON/XOFF ตั้งที่คอมพิวเตอร์ ชุดควบคุมรุ่นอื่นใช้หมายเลขพารามิเตอร์ต่างกัน
Makinoเครื่องที่ใช้ชุดควบคุม Fanuc ตั้งที่พารามิเตอร์แบบ Fanucชุดควบคุม Professional ของ Makino ดูคู่มือของ Makino
HaasSetting 11 (Baud rate) 12 (Parity) 13 (Stop bit) 14 (Synchronization) 37 (Data bits)ค่าตั้งต้นคือ Even, 2 Stop bits, 7 Data bits
Mitsubishi Meldas 60พารามิเตอร์ 9102 (Baud rate) 9103 (Stop bit) 9104 (Parity check) 9105 (Even parity) 9106 (Data bits) อุปกรณ์ชุดที่สองคือ 9202 ถึง 9206ปกติตั้ง 9106 = 2 (7 บิต) ตรงกับคอมพิวเตอร์ ถ้าส่งไม่ได้หรือ parity error ลองตั้ง 9106 = 3 (8 บิต) โดยคอมพิวเตอร์ยังตั้ง 7 บิต Even parity เพราะชุดควบคุมบางรุ่นนับ parity bit เป็นบิตข้อมูล
Mazak Mazatrolหน้าพารามิเตอร์การส่งข้อมูล (TAPE) ของเครื่องตั้งเครื่องเป็น 8 บิต และคอมพิวเตอร์เป็น 7 บิตกับ Even parity รุ่นเก่า (T2 T3) มักใช้ 4800

การควบคุมการไหล

  • XON/XOFF เมื่อหน่วยความจำรับข้อมูลของเครื่องใกล้เต็ม เครื่องส่งอักขระ XOFF (DC3) มาให้หยุด และส่ง XON (DC1) เมื่อพร้อมรับต่อ โปรแกรมนี้ส่งทีละไม่กี่ไบต์ด้วยความเร็วไม่เกิน Baud rate เพื่อให้หยุดได้ทันทีที่เครื่องขอ
  • RTS/CTS ใช้สายสัญญาณแยกบอกว่าพร้อมรับ ไดรเวอร์ของพอร์ตจัดการให้ สายต้องมีขาคู่นี้ต่อครบ
  • ไม่มี ใช้ได้กับโปรแกรมสั้นที่เครื่องรับทันได้ ถ้าเครื่องรับไม่ทัน ใส่เวลา หน่วงหลังแต่ละบรรทัด

ปัญหาที่พบบ่อย

อาการสาเหตุที่พบบ่อย
เครื่องไม่ได้รับอะไรเลยสายไม่สลับขาส่งกับขารับ เครื่องเลือกช่อง I/O อื่น หรือใช้ RTS/CTS แต่สายไม่มีขาคู่นั้น
ได้รับเป็นอักขระแปลก ๆBaud rate, Data bits หรือ Parity ไม่ตรงกัน
เครื่องแจ้งเตือน parity หรือ overrunParity หรือ Stop bits ไม่ตรงกัน หรือ Flow control ของสองฝั่งไม่ตรงกัน
เครื่องรับแต่ไม่จบไฟล์ไม่มี % ปิดท้ายให้แก้ไขไฟล์ หรือเปิด แก้ไฟล์ก่อนส่ง ไว้
เชื่อมต่อพอร์ตไม่ได้โปรแกรมอื่นหรือแท็บอื่นเปิดพอร์ตนั้นอยู่ หรือยังไม่ได้ติดตั้งไดรเวอร์ของสาย

ส่งไปพร้อมกับตัดงาน (DNC)

โปรแกรมที่ยาวเกินหน่วยความจำของเครื่อง สามารถส่งทยอยเข้าไปขณะที่เครื่องทำงานได้ เครื่องจะรันตามโปรแกรมที่ส่งเข้าไปทีละบรรทัด และจะไม่บันทึกไว้ในเครื่อง ตั้งเครื่องเป็นโหมด RMT (หรือ DNC) กด Cycle start แล้วกด ส่ง เครื่องรับและทำงานไปทีละบรรทัด ต้องใช้ Flow control สำหรับการทำงานแบบนี้

  • เปิดแท็บนี้ไว้ด้านหน้าตลอดการส่ง และอย่าให้คอมพิวเตอร์เข้าโหมดพัก เบราว์เซอร์ทำงานช้าลงมากเมื่อแท็บถูกซ่อน ข้อมูลจึงส่งไม่ทันและเครื่องหยุดรอกลางโปรแกรม ระหว่างส่ง หน้าจอจะไม่ดับเอง (ถ้าเบราว์เซอร์อนุญาต) และชื่อแท็บแสดงเปอร์เซ็นต์ที่ส่งแล้ว ถ้าสลับไปแท็บอื่น เมื่อกลับมาจะมีข้อความบอกว่าแท็บถูกซ่อนไปนานเท่าใด
  • การเตือนเมื่อส่งไม่ออก ถ้าไม่มีข้อมูลออกจากพอร์ตนานกว่าเวลาที่ตั้ง หน้านี้จะแสดงคำเตือนพร้อมสาเหตุที่เป็นไปได้ และเปลี่ยนชื่อแท็บเป็น “⚠ หยุดรอ” ตามด้วยเวลาที่รอ จึงเห็นได้แม้เปิดแท็บอื่นอยู่ แต่ระหว่างตัดงาน เครื่องอาจขอหยุด (XOFF) นานเป็นปกติเมื่อทำบรรทัดที่ใช้เวลานาน จึงควรตั้งเวลาให้ยาวกว่าบรรทัดที่นานที่สุดในโปรแกรม
  • ปิดหรือโหลดหน้าใหม่ระหว่างส่ง เบราว์เซอร์ถามยืนยันก่อน เพราะการส่งจะหยุดทันที
  • หยุดเครื่องที่แผงควบคุมก่อน (Feed hold แล้ว Reset) แล้วจึงกด หยุดส่ง เพราะเมื่อข้อมูลหยุดส่งมา เครื่องจะรออยู่ที่บรรทัดนั้นทั้งที่สปินเดิลยังหมุน

ข้อจำกัด

  • รหัส ISO (ASCII) เท่านั้น ไม่รองรับรหัส EIA ของเครื่องรุ่นเก่า ตั้งเครื่องให้ส่งออกเป็นรหัส ISO
  • ต้องกดส่งหรือรับที่คอมพิวเตอร์ทุกครั้ง โปรแกรม DNC บางตัวให้ผู้ปฏิบัติงานเรียกโปรแกรมจากแผงควบคุมของเครื่องได้เอง โดยเครื่องส่งคำขอพร้อมหมายเลขโปรแกรมมาที่คอมพิวเตอร์ หน้านี้ไม่รองรับแบบนั้น
  • ส่งเป็นข้อความธรรมดาเท่านั้น แบบเดียวกับการอ่านเทป ไม่รองรับโปรโตคอลเฉพาะยี่ห้อที่สองฝั่งต้องตอบรับกัน เช่น LSV2 ของ Heidenhain
  • ไฟล์ที่รับมาเก็บเฉพาะตัวโปรแกรม ตั้งแต่ % ตัวแรกถึง % ตัวที่สอง อักขระที่เครื่องส่งมาตามแบบเครื่องเจาะเทปถูกตัดออก ได้แก่ NUL ที่ส่งนำหน้าแทนเทปเปล่า และรหัสควบคุม DC1 ถึง DC4 ส่วน parity bit (บิตที่ 8) ไม่ถูกนำมาอ่าน
  • การตั้งค่าการเชื่อมต่อจำไว้ในเครื่องนี้เท่านั้น Baud rate, Data bits, Parity, Stop bits และการควบคุมการไหลที่เลือกล่าสุด ถูกบันทึกไว้ในเบราว์เซอร์ที่ใช้อยู่ ไม่ได้ส่งไปที่ใด เมื่อเปิดจากคอมพิวเตอร์หรือเบราว์เซอร์อื่น หรือหลังล้างข้อมูลเบราว์เซอร์ ค่าจะกลับเป็นค่าตั้งต้นของ Fanuc ต้องเลือกใหม่