สารบัญ:

Remote CNC Stop and Monitor: 11 ขั้นตอน (พร้อมรูปภาพ)
Remote CNC Stop and Monitor: 11 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: Remote CNC Stop and Monitor: 11 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: Remote CNC Stop and Monitor: 11 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: ติดตั้งตู้คอนโทรลเครื่องCNC#cnc 2024, กรกฎาคม
Anonim
หยุดและตรวจสอบ CNC ระยะไกล
หยุดและตรวจสอบ CNC ระยะไกล
หยุดและตรวจสอบ CNC ระยะไกล
หยุดและตรวจสอบ CNC ระยะไกล
รีโมท CNC Stop and Monitor
รีโมท CNC Stop and Monitor

โปรเจ็กต์นี้มีวิธีการที่ไม่แพงสำหรับการดำเนินการ STOP (ALT+S) จากระยะไกลไปยัง Mach3 ทำได้ด้วยกล้อง Raspberry Pi (RPi) + ที่เชื่อมต่อกับพีซีผ่านสาย USB การตรวจสอบและเปิดใช้งาน STOP บน CNC ทำได้โดยใช้เว็บแอปพลิเคชันการสตรีมวิดีโอที่ทำงานบน RPi การใช้โซลูชันนี้ควรทำโดยยอมรับความเสี่ยงของคุณเอง ฉันขอแนะนำอย่างยิ่งให้ติดต่อผู้ผลิต CNC ของคุณและซื้อและติดตั้งจุดหยุดฉุกเฉินระยะไกลที่แนะนำซึ่งระบุไว้

หมายเหตุ: การดำเนินการนี้ไม่เหมือนกับการหยุดฉุกเฉิน (Estop) ที่ต่อสายเข้ากับแผงควบคุม CNC ของคุณ แต่เป็นการดำเนินการของปุ่มลัดเพื่อดำเนินการ STOP ของ Mach3

ขั้นตอนที่ 1: อะไหล่

อะไหล่
อะไหล่
  1. Raspberry Pi Zero W
  2. สายกล้อง Raspberry Pi Zero 1.3
  3. กล้อง Raspberry Pi (หมายเหตุ: ไม่รองรับเว็บแคม USB)
  4. เคสสำหรับ Raspberry Pi และ Camera
  5. การ์ด micro SD 16 GB
  6. สาย USB

ขั้นตอนที่ 2: ประกอบกล้องและติดตั้ง Raspbian

ประกอบกล้องและติดตั้ง Raspbian
ประกอบกล้องและติดตั้ง Raspbian
ประกอบกล้องและติดตั้ง Raspbian
ประกอบกล้องและติดตั้ง Raspbian
ประกอบกล้องและติดตั้ง Raspbian
ประกอบกล้องและติดตั้ง Raspbian
ประกอบกล้องและติดตั้ง Raspbian
ประกอบกล้องและติดตั้ง Raspbian

ประกอบกล้อง RPi สายเคเบิล และ RPi เข้าด้วยกันตามคำแนะนำที่พบในวิธีเชื่อมต่อโมดูลกล้อง Raspberry Pi กับ Raspberry Pi Zero W และเคสอย่างเป็นทางการ หมายเหตุ: ไม่รองรับเว็บแคม USB

ติดตั้ง Raspbian เวอร์ชันล่าสุดบน Raspberry Pi Zero W ฉันแนะนำให้ทำตามคำแนะนำทีละขั้นตอนที่ Raspberry Pi Zero Headless Quick Start ของ Adafruit

ทำการเชื่อมต่อ SSH กับ RPi ตามที่กล่าวไว้ในคำแนะนำข้างต้น และเริ่มการกำหนดค่าระบบทั่วไปโดยเรียกใช้ยูทิลิตี้ raspi-config

sudo raspi-config

ขั้นตอนที่ 3: เปิดใช้งานกล้อง

เปิดใช้งานกล้อง
เปิดใช้งานกล้อง
เปิดใช้งานกล้อง
เปิดใช้งานกล้อง
เปิดใช้งานกล้อง
เปิดใช้งานกล้อง
เปิดใช้งานกล้อง
เปิดใช้งานกล้อง

ในหน้าต่างหลัก raspi-config เลือกหมายเลข 5 ตัวเลือกการเชื่อมต่อ - กำหนดค่าการเชื่อมต่อกับอุปกรณ์ต่อพ่วง ในหน้าต่างถัดไป เลือก P1 กล้อง - เปิด/ปิดการเชื่อมต่อกับกล้อง Raspberry Pi หน้าต่างถัดไปจะถามว่าคุณต้องการเปิดใช้งานส่วนต่อประสานกล้องหรือไม่? เลือกและกด Enter หน้าจอสุดท้ายจะระบุว่าเปิดใช้งานอินเทอร์เฟซของกล้องแล้ว และกด Enter สำหรับ สิ่งนี้จะนำคุณกลับไปที่หน้าต่างหลักของ raspi-config

ขั้นตอนที่ 4: ขยายระบบไฟล์

ขยายระบบไฟล์
ขยายระบบไฟล์
ขยายระบบไฟล์
ขยายระบบไฟล์
ขยายระบบไฟล์
ขยายระบบไฟล์

ในหน้าต่างหลัก raspi-config เลือกหมายเลข 7 ตัวเลือกขั้นสูง - กำหนดการตั้งค่าขั้นสูง ในหน้าต่างถัดไป เลือก A1 ขยายระบบไฟล์ - ตรวจสอบให้แน่ใจว่าใช้ที่เก็บข้อมูลการ์ด SD ทั้งหมด หลังจากเลือกรายการนี้ หน้าต่างจะปรากฏขึ้นเพื่อระบุว่ามีการปรับขนาดพาร์ติชั่นรูทแล้ว ระบบไฟล์จะขยายใหญ่ขึ้นเมื่อรีบูตครั้งถัดไป กดปุ่ม Enter เพื่อเลือก นี่จะคืนหน้าต่างหลัก raspi-config ให้คุณ

ขั้นตอนที่ 5: ตัวเลือกการบูต

ตัวเลือกการบูต
ตัวเลือกการบูต
ตัวเลือกการบูต
ตัวเลือกการบูต
ตัวเลือกการบูต
ตัวเลือกการบูต

ในหน้าต่างหลัก raspi-config เลือกหมายเลข 3 ตัวเลือกการบูต - กำหนดค่าตัวเลือกสำหรับการเริ่มต้น ในหน้าจอถัดไป เลือก B1 Desktop / CLI - เลือกว่าจะบู๊ตในสภาพแวดล้อมเดสก์ท็อปหรือไม่ ซึ่งจะนำคุณไปยังหน้าต่างสุดท้าย และเลือก B1 คอนโซล - คอนโซลข้อความ กำหนดให้ผู้ใช้เข้าสู่ระบบ การเลือกสิ่งนี้จะนำคุณกลับไปที่หน้าต่างหลัก raspi-config

คุณสามารถออกจาก raspi-config โดยเลือก ซึ่งอาจต้องรีบูต ดำเนินการรีบูตและ SSH กลับเข้าสู่ RPi

ขั้นตอนที่ 6: กำหนดค่า RPi Into USB Keyboard (HID)

กำหนดค่า RPi Into USB Keyboard (HID)
กำหนดค่า RPi Into USB Keyboard (HID)

STOP ถูกสร้างขึ้นโดยการส่งการกดแป้น ALT+s ผ่าน RPi ไปยังพีซีที่ใช้ Mach3 ด้วยเหตุนี้ RPi จึงต้องกำหนดค่าให้ปรากฏและทำงานเป็นแป้นพิมพ์ USB กับพีซี ซึ่งช่วยให้สามารถส่งคำสั่งปุ่มลัด เช่น ALT+s ไปยังพีซีได้ คำแนะนำสำหรับการกำหนดค่า RPi อยู่ที่ Turn Raspberry Pi Zero เป็น USB Keyboard (HID)

หลังจากรีบูตให้ป้อนคำสั่งต่อไปนี้:

ls -l /dev/hid*

คุณควรเห็นอุปกรณ์ /dev/hidg0 ปรากฏในรายการดังที่แสดงด้านบน การเข้าถึงแบบกลุ่มและการเข้าถึงแบบอ่านและเขียนของอุปกรณ์นี้จะมีการเปลี่ยนแปลงในขั้นตอนต่อจากนี้

ขั้นตอนที่ 7: ติดตั้ง RPi-Cam-Web-Interface

ติดตั้ง RPi-Cam-Web-Interface
ติดตั้ง RPi-Cam-Web-Interface
ติดตั้ง RPi-Cam-Web-Interface
ติดตั้ง RPi-Cam-Web-Interface

ติดตั้งซอฟต์แวร์สตรีมมิ่งวิดีโอและเว็บเซิร์ฟเวอร์ตามคำแนะนำที่ RPi-Cam-Web-Interface

ระหว่างการติดตั้ง คุณจะถูกถามถึงตัวเลือกการกำหนดค่าต่อไปนี้:

  • โฟลเดอร์ย่อยของแคม: html
  • สตาร์ทอัตโนมัติ: (ใช่/ไม่ใช่) ใช่
  • เซิร์ฟเวอร์: (apache/nginx/lighttpd) apache
  • เว็บพอร์ต: 80
  • ผู้ใช้: (blank=nologin) ผู้ดูแลระบบ (ตัวอย่าง)
  • รหัสผ่าน: #34By97Zz (ตัวอย่าง)
  • jpglink: (ใช่/ไม่ใช่) ไม่ใช่
  • phpversion: (5/7) 7

ฉันเลือกอินพุตเริ่มต้นเพื่อทำให้การติดตั้งง่ายขึ้น แต่เพิ่มผู้ใช้และรหัสผ่านเพื่อรักษาความปลอดภัยหน้าเว็บ RPi เลือกและดำเนินการติดตั้งต่อ ในตอนท้ายคุณจะถูกขอให้เริ่มระบบกล้องตอนนี้ เลือกและดำเนินการต่อ หากสำเร็จ คุณจะถูกนำไปที่พรอมต์คำสั่ง

เชื่อมต่อกับหน้าเว็บ RPi https:// /html/

ขั้นตอนที่ 8: ให้สิทธิ์การเข้าถึงข้อมูล Www แก่อุปกรณ์ /dev/hidg0

ให้สิทธิ์การเข้าถึงข้อมูลแก่อุปกรณ์ /dev/hidg0
ให้สิทธิ์การเข้าถึงข้อมูลแก่อุปกรณ์ /dev/hidg0

เมื่อติดตั้งแอพพลิเคชั่นและฮาร์ดแวร์ทั้งหมดแล้ว การปรับแต่งล่าสุดสามารถทำได้เพื่อสิ้นสุดการติดตั้ง วัตถุประสงค์ในขั้นตอนนี้คือการให้สิทธิ์ www-data แก่ผู้ใช้ในการเข้าถึงอุปกรณ์คีย์บอร์ด USB /dev/hidg0

ขั้นแรก สร้างกลุ่มชื่อ hid และเพิ่ม www-data ในกลุ่ม:

sudo addgroup hid

sudo adduser www-data hid

ถัดไป เปิด /etc/rc.local ด้วยคำสั่งนี้ (อีกครั้ง):

sudo nano /etc/rc.local

เพิ่มสิ่งต่อไปนี้ก่อนบรรทัดที่มี exit 0 แต่ใต้บรรทัดที่คุณเพิ่มในขั้นตอน Configure the RPi Into USB Keyboard (HID):

sudo chown root:hid /dev/hidg0sudo chmod 660 /dev/hidg0

คำสั่งดังกล่าวจะให้การเข้าถึงอุปกรณ์ที่จำเป็น /dev/hidg0 สำหรับผู้ใช้ www-data หลังจากทำการแก้ไขข้างต้นและรีบูต คุณจะเห็นอุปกรณ์ /dev/hidg0 พร้อมคำสั่งต่อไปนี้:

ls -l /dev/hid*

สังเกตว่าตอนนี้กลุ่มสำหรับอุปกรณ์นี้ถูกซ่อนและกลุ่มมีสิทธิ์อ่านและเขียนแล้ว

======================================

ทางเลือก: หากคุณต้องการใช้สคริปต์ที่เข้าถึง GPIO, I2C และ/หรือ SPI ผ่านหน้าเว็บ RPi คุณจะต้องเปิดใช้งานอินเทอร์เฟซเหล่านี้ใน raspi-config ประการที่สอง คุณจะต้องให้สิทธิ์ www-data แก่ผู้ใช้ในการเข้าถึงอินเทอร์เฟซเหล่านี้

sudo usermod -a -G gpio, i2c, spi www-data

ขั้นตอนที่ 9: กำหนดค่าเว็บอินเตอร์เฟส

กำหนดค่าเว็บอินเตอร์เฟส
กำหนดค่าเว็บอินเตอร์เฟส

อัปโหลดไฟล์ userbuttons.txt ด้านล่างไปยังโฮมไดเร็กทอรี RPi ของคุณ '/home/pi/'

จากโฮมไดเร็กตอรี่ของคุณ ให้คัดลอก userbuttons.txt ไปยังโฟลเดอร์ '/var/www/html/':

cd ~sudo cp userbuttons.txt /var/www/html/userbutton

เปลี่ยนความเป็นเจ้าของและการอนุญาตสำหรับปุ่มผู้ใช้:

sudo chown www-data:www-data /var/www/html/userbutton

สร้างสคริปต์เชลล์ stop_cnc.sh:

sudo nano /var/www/html/macros/stop_cnc.sh

คัดลอกและวางข้อความต่อไปนี้ในไฟล์นี้:

#!/bin/bashfunction write_report { echo -ne $1 > /dev/hidg0}# CTRL=x10 SHIFT=x20 ALT=x40# ALT + swrite_report "\x40\0\x16\0\0\0\0\0" # Nullwrite_report "\0\0\0\0\0\0\0\0" #echo "หยุด CNC" >> /var/www/html/macros/testmacro.txt

หลังจากบันทึก /var/www/html/macros/stop_cnc.sh ให้ระบุการอนุญาตที่จำเป็นสำหรับไฟล์ด้วยคำสั่งเหล่านี้:

sudo chown www-data:www-data /var/www/html/macros/stop_cnc.shsudo chmod 764 /var/www/html/macros/stop_cnc.sh

======================================ตัวเลือก: หากคุณต้องการมีปุ่มสำหรับ CYCLE START และ FEED HOLD คุณสามารถเพิ่มปุ่มต่อไปนี้ใน /var/www/html/userbuttons:

sudo nano /var/www/html/userbuttons

ค้นหาและลบ # ออกจากบรรทัดที่แสดงด้านล่างในไฟล์ userbuttons:

#FEED HOLD, feed_hold.sh, btn btn-warning btn-lg,#CYCLE START, cycle_start.sh, btn btn-success btn-lg,

สร้างสคริปต์เชลล์ cycle_start.sh:

sudo nano /var/www/html/macros/cycle_start.sh

คัดลอกและวางข้อความต่อไปนี้ในไฟล์นี้:

#!/bin/bashfunction write_report { echo -ne $1 > /dev/hidg0}# CTRL=x10 SHIFT=x20 ALT=x40# ALT + r - CYCLE STARTwrite_report "\x40\0\x15\0\0\0\0 \0"# Nullwrite_report "\0\0\0\0\0\0\0\0"#echo "เริ่มวงจร" >> /var/www/html/macros/cycle_start.txt

สร้างสคริปต์เชลล์ feed_hold.sh:

sudo nano /var/www/html/macros/feed_hold.sh

คัดลอกและวางข้อความต่อไปนี้ในไฟล์นี้:

#!/bin/bashfunction write_report { echo -ne $1 > /dev/hidg0 } # CTRL=x10 SHIFT=x20 ALT=x40 # SPACE - FEED HOLD write_report "\0\0\x2c\0\0\0\0\ 0" # Null write_report "\0\0\0\0\0\0\0\0"#echo "FEED HOLD" >> /var/www/html/macros/feed_hold.txt

เปลี่ยนความเป็นเจ้าของและการอนุญาตของเชลล์สคริปต์:

sudo chown www-data:www-data /var/www/html/macros/cycle_start.shsudo chown www-data:www-data /var/www/html/macros/feed_hold.shsudo chmod 764 /var/www/html/ macros/cycle_start.shsudo chmod 764 /var/www/html/macros/feed_hold.sh

ขั้นตอนที่ 10: ปรับแต่งลักษณะที่ปรากฏของเว็บ

ปรับแต่งลักษณะที่ปรากฏของเว็บ
ปรับแต่งลักษณะที่ปรากฏของเว็บ
ปรับแต่งลักษณะที่ปรากฏของเว็บ
ปรับแต่งลักษณะที่ปรากฏของเว็บ

ก่อนขั้นตอนก่อนหน้า หน้าเว็บปรากฏเป็นภาพ 'ก่อน' ที่แสดงด้านบน หลังจากการปรับเปลี่ยนในปุ่ม STOP จะปรากฏขึ้น การเปลี่ยนแปลงที่แนะนำบางประการในการตั้งค่ากล้อง:

  • ความละเอียด: มุมมองสูงสุด 972p 4:3
  • คำอธิบายประกอบ (สูงสุด 127 อักขระ): ข้อความ: CNC Cam %Y.%M.%D_%h:%m:%s
  • คุณภาพการแสดงตัวอย่าง (1…100) ค่าเริ่มต้น 10: 50Width (128…1024) ค่าเริ่มต้น 512: 1024Divider (1-16) ค่าเริ่มต้น 1: 1

ชื่อแถบชื่อเรื่องและชื่อ 'RPi Cam Control v6.4.34: mycam@raspberrypi' อาจถูกแก้ไขโดยการปรับแต่งไฟล์ /var/www/html/config.php

sudo nano /var/www/html/config.php

แก้ไข 'RPi Cam Control' หากคุณต้องการเปลี่ยนชื่อเรื่อง:

// ชื่อของแอปพลิเคชันนี้กำหนด ('APP_NAME', 'RPi Cam Control');

ในส่วนการตั้งค่า 'ระบบ' คุณสามารถเปลี่ยนรูปแบบเป็นกลางคืน และคลิกตกลงเพื่อเปลี่ยนพื้นหลังเป็นสีดำ

ขั้นตอนที่ 11: การทดสอบและการใช้งาน

การทดสอบและการใช้งาน
การทดสอบและการใช้งาน
การทดสอบและการใช้งาน
การทดสอบและการใช้งาน

เชื่อมต่อสาย USB เข้ากับพอร์ต USB ของ RPi (ไม่ใช่ PWR USB) และเชื่อมต่อปลายอีกด้านหนึ่งเข้ากับพีซีที่ใช้ Mach3 สายเคเบิลนี้จะจ่ายไฟให้กับ RPi และควบคุม Mach3 บนพีซี ดังนั้น อย่าเชื่อมต่อแหล่งจ่ายไฟภายนอกกับ PWR USB บน RPi ซึ่งอาจทำให้พีซีหรือ RPi เสียหายได้

โฟกัส - หน้าต่างที่มีโฟกัสของแป้นพิมพ์อยู่ในขณะนี้ การกดแป้นพิมพ์จากแป้นพิมพ์จะเกิดขึ้นในหน้าต่างนี้

ตามที่กล่าวไว้ก่อนหน้านี้ USB ของ RPi จะส่งปุ่มลัด ALT+s ไปยัง USB ของพีซีที่เชื่อมต่อ ในการทดสอบการตั้งค่า (ไม่มี Mach3) ให้เปิดแอปพลิเคชัน (ควรเป็นโปรแกรมแก้ไขข้อความ) ที่มีตัวเลือกเมนูที่ขึ้นต้นด้วย S ดังที่แสดงด้านบนในแอปพลิเคชัน Notepad++ โปรดสังเกตว่า S ถูกขีดเส้นใต้ในเมนูซึ่งบ่งชี้ว่าการกดแป้น ALT+s จะเปิดใช้งานเมนู คุณสามารถลองใช้แป้นพิมพ์พีซีเพื่อทดสอบผลลัพธ์ได้ ดังในตัวอย่างข้างต้น เมนูค้นหาปรากฏขึ้น ผลลัพธ์ของคุณจะแตกต่างกัน ขึ้นอยู่กับแอปพลิเคชันที่คุณเปิดด้วยเมนูที่มีตัวเลือกที่มี S หากการทดสอบของคุณสำเร็จ ให้ทดสอบการตั้งค่าของคุณด้วยเว็บแอปพลิเคชัน กำหนดโฟกัสไปที่แอปพลิเคชันเดิมเหมือนเมื่อก่อน และเข้าถึงเว็บแอปพลิเคชันของ RPi จากอุปกรณ์อื่น คุณยังสามารถใช้สมาร์ทโฟนเพื่อเข้าถึง RPi คลิกปุ่ม STOP บนเว็บเพจ และเมนูเดียวกันควรเลื่อนลงมาเหมือนเมื่อก่อน

หากการทดสอบของคุณสำเร็จ คุณก็พร้อมที่จะใช้กับ Mach3 ฉันใช้ Mach3 2010 Screenset และใช้งานได้ดี

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

การใช้วิธีนี้ควรทำโดยยอมรับความเสี่ยงเอง

แนะนำ: