emc installation
DESCRIPTION
Old Installation Method of EMCTRANSCRIPT
การตดตงโปรแกรม EMCพเชษฐ บญหนน
ศนยเทคโนโลยอเลกทรอนกสและคอมพวเตอรแหงชาต
พเชษฐ บญหนน 1
เนอหาทจะนำาเสนอ● แนะนำาโปรแกรม EMC● โครงสรางของโปรแกรม EMC● แนะนำาระบบปฏบตการ Linux● แนะนำาระบบปฏบตการเวลาจรง● แนวทางการตดตงโปรแรม EMC● แนวทางการพฒนาตอยอดจากโปรแกรม EMC
พเชษฐ บญหนน 2
โปรแกรม EMC● EMC หรอ The Enhanced Machine Controller● เรมตนพฒนาโดย National Institute of Standards
and Technology หรอ NIST(www.nist.gov) ของรฐบาลสหรฐอเมรกา
● ปจจบนพฒนาโดยบคคลทวไป(www.linuxcnc.org)● Free Sofeware and Open Source● สามารถควบคมมอเตอรไดมากถงหกแกน
พเชษฐ บญหนน 3
โปรแกรม EMC● รบคำาสงการทำางานแบบ
– Manual Mode ทำางานประเภทการเคลอนทแบบ Jog, Home– Auto Mode ทำางานโดยการรบคำาสง G-Codes จากแฟมขอมล– MDI Mode รบ G-Code ทละหนงบรรทด
● แตละแกนทำางานประสานกนได● ควบคมมอเตอรไดทงแบบ Stepping Motor หรอ Servo
Motorพเชษฐ บญหนน 4
โปรแกรม EMC● แบบ Stepping Motor ควบคมผานพอรตขนานหรอ
Printer Port ของ Computer● แบบ Servo Motor ตองใชการดเฉพาะอานตำาแหนง
Encoder ของ มอเตอรและรบคำาสงเพอควบคมมอเตอร– www.vitalsystem.com ~800$ PCI-8A8O– www.vigproducts.com ~1000$ PCI-4A8O– www.servotogo.com ~888$ ISA-8A8O
พเชษฐ บญหนน 5
โครงสรางของโปรแกรม EMC● เนองจากตองทำางานแบบเวลาจรงจงจะสามารถควบคม
เครองจกรได ดงนนโปรแกรม EMC จงทำางานบนระบบปฏบตการเวลาจรง
● EMC ทำางานบน RTAI ซงเปนระบบปฏบตการเวลาจรงทพฒนามาจากระบบปฏบตการ Linux
● ทง RTAI และ Linux มลขสทธแบบ GPL สามารถนำาไปใชงานไดโดยไมตองเสยคาลขสทธ
พเชษฐ บญหนน 6
พเชษฐ บญหนน 7
ระบบปฏบตการ Linux● ระบบปฏบตการและโปรแกรมสวนมากมลขสทธแบบ GPL● ใชงานไดฟรไมตองเสยคาลขสทธ ● ทงระบบสามารถ Download จาก Internet ได● ม Souce Code ให สามารถนำาไปพฒนาตอยอดได● จากเดมทนยมใชสำาหรบ Server ปจจบนกำาลงพฒนาให
สามารถใชไดดสำาหรบระบบ Desktop เชน Linux TLE, Suse, Mandrake ฯ
พเชษฐ บญหนน 8
ระบบปฏบตการ RTAI● Linux ยงไมสามารถทำางานแบบ Hard Real-Time ได● RTAI เปนโปรแกรมทเพมความสามารถเขาไปใน Linux
ใหสามารถทำางานแบบ Hard Real-Time ได● สามารถใชความสามารถตางๆ เชน GUI, Networking ฯ
ของ Linux ไดปกต● มลขสทธแบบ GPL● Download ไดจาก www.rtai.org
พเชษฐ บญหนน 9
การตดตงโปรแกรม EMC● มดวยกน 3 แนวทาง
1)ลงจากแผนตดตง BDI (Brain Dead Instal) ทจะทำาการตดตง Linux, RTAI และ EMC ในฮารดดสใหเลย แตปจจบนไมมการพฒนาตอ
2)ลงจากแผน Live CD ของ BDI สามารถทดสอบการทำางาน EMC บนคอมพวเตอรไดกอนทำาการตดตงลงในฮารดดส สะดวก งาย แตตองใชกบคอมพวเตอรทความเรว CPU 500 Mhz ขนไป และมหนวยความจำา 256 MB ขนไป
พเชษฐ บญหนน 10
การตดตงโปรแกรม EMC3)ตดตงเองจาก Source Code ตดตงเองทงหมด ตงแต Linux,
RTAI และสดทาย EMC➢ ตดตงยาก➢ ไมจำาเปนตองใชเครองทมสมรรถนะสงมาก CPU 200 Mhz
หนวยความจำา 32 MB กเพยงพอ➢ สามารถนำา Source Code ทมมาพฒนาตอ เพองานเฉพาะอยาง
ได➢ มความเสถยรกวาสองวธแรกเพราะเรา Config Software ใหเขา
กบ Hardware ทมไดดกวาพเชษฐ บญหนน 11
การตดตง EMC จากแผน BDI● สามารถ Download image file เพอเขยนแผน BDI ไดจาก
www.linuxcnc.org● แผน BDI สรางขนโดยการนำา RedHat Linux 7.2 มา
ปรบปรงเพม Real-Time Kernel และ โปรแกรม EMC เขาไป
● การตดตงเหมอนกบการตดตง RedHat Linux 7.2● Computer Hardware ใหมๆ อาจจะไมรจก
พเชษฐ บญหนน 12
การใชงาน EMC Live CD● คอมพวเตอรสวนบคคล
– CPU > 500 Mhz, RAM > 256 MB– Keyboard, Mouse, Monitor– CDROM or DVD (ไมจำาเปนตองใช HD)
● ทกครงทเปดเครอง คา Config ทตงไวจะเปนคา Default● อาจบนทกคา Config หรอ G-Codes ไวใน HD, Floopy● แตตอง Copy คามาทบคาทตงไวทกครง
พเชษฐ บญหนน 13
การตดตง EMC จาก Live CD● คอมพวเตอรม HD อยางตำา 2 GB● การตดตอกบ HD ตองเปนชนด IDE ยงไมสนบสนน SATA ● ตดตง EMC หลงจาก Boot Live CD เสรจแลว● เมอทดสอบการใชงาน EMC เปนทพอใจแลวจงทำาการตดตง● หาก HD ทจะทำาการตดตงมขอมลอย ควรทำาการ Backup ไว● หาก HD ทำาการตดตง MS-Window อยแลวควรทำาการแบง
Partition HD สำาหรบ Linux ไวกอนพเชษฐ บญหนน 14
พเชษฐ บญหนน 15
พเชษฐ บญหนน 16
พเชษฐ บญหนน 17
พเชษฐ บญหนน 18
พเชษฐ บญหนน 19
พเชษฐ บญหนน 20
พเชษฐ บญหนน 21
พเชษฐ บญหนน 22
พเชษฐ บญหนน 23
พเชษฐ บญหนน 24
พเชษฐ บญหนน 25
พเชษฐ บญหนน 26
ตดตง EMC จาก Source● เหมาะสำาหรบผท
– ตองการพฒนาโปรแกรมเพมเตมให EMC สามารถใชงานกบ Hardware ทไดพฒนาเองได
– ตองการพฒนาความสามารถของโปรแกรม EMC– ตองการศกษาการทำางานของโปรแกรม EMC– ตองการ Config ระบบใหเขากบคอมพวเตอรทใชใหมากทสด
เพอเพมเสถยรภาพ และลดสมรรถนะของคอมพวเตอรทตองใช พเชษฐ บญหนน 27
ตดตง EMC จาก Source ● ผตดตงวธนควรจะมพนฐานความรของระบบปฏบตการ
Linux มากพอสมควร● สงทตองเตรยม
– แผนตดตง Linux เชน Debian, Linux TLE, Mandrake, Redhat ฯ (ทดสอบแลวบน Debian 3.1 (sarge))
– Source Codes ของ Linux Kernel, RTAI, และ EMC (มในแผน EMC Live CD (NECTEC) ในไดเรกทอร /source/)
พเชษฐ บญหนน 28
การตดตง Linux● ตดตง Linux ดวยวธการของแตละคาย● ควรแบงเนอทให Linux ประมาณ 3 GB● นอกจากตดตงระบบทวไปแลว จะตองตดตงโปรแกรม
สำาหรบการพฒนาดวย– Compiler GNU gcc, g++ รน 2.95 หรอ 3.2 ขนไป– Tcl, Tclx, Tk, Tkx รน 8.3– Etags
พเชษฐ บญหนน 29
การตดตง RTAI● Kernel คอ โปรแกรมททำาหนาทควบคม ตดตอ ระหวาง
ฮารดแวรคอมพวเตอรกบโปรแกรมประยกต● RTOS คอ ระบบปฏบตการทคำานงเรองเวลาในการ
ทำางานดวย นอกเหนอจากการทำางานทถกตองแลว● RTOS จำาเปนสำาหรบระบบควบคม● Original Linux Kernel ไมใช RTOS
พเชษฐ บญหนน 30
HardWare
Linux Kernel X-Windows
Mozilla
OpenOffice TLE
Shell
Gimp
พเชษฐ บญหนน 31
การตดตง RTAI● RTAI คอโปรแกรมทไดจากการแกไข Original Linux
Kernel ใหเปน Real-Time Linux Kernel● Linux Kernel สามารถเพมความสามารถในการจดการ
กบ Hardware โดยการแทรก Modules เขาไปใน Kernel
● การตดตง RTAI มสองขนตอนคอ ตดตง RTOS Kernel และ ตดตง RTAI Modules
พเชษฐ บญหนน 32
การตดตง RTOS Kernel● /usr/src/> tar jxvf linux-2.4.25.tar.bz2● /usr/src/> tar jxvf rtai-3.0r4.tar.bz2● /usr/src/> ln -s linux-2.4.25 linux● /usr/src/> cd linux● /usr/src/linux/> patch -p1 < ../rtai-3.0r4/rtai-
core/arch/i386/patches/hal12-2.4.25.patch● /usr/src/linux/> make xconfig
พเชษฐ บญหนน 33
พเชษฐ บญหนน 34
พเชษฐ บญหนน 35
พเชษฐ บญหนน 36
พเชษฐ บญหนน 37
พเชษฐ บญหนน 38
การตดตง RTOS Kernel● /usr/src/linux/> make dep● /usr/src/linux/> make ● /usr/src/linux/> make modules● /usr/src/linux/> make modules_install● /usr/src/linux/> make install● แกไข Boot Loader
พเชษฐ บญหนน 39
การตดตง RTOS Kernel● Lilo แกไข /etc/lilo.conf โดยเพม
image=/boot/vmlinuz-2.4.25-adeos
root=/dev/hdaXlabel=RTAIinitrd=/boot/initrd.img-2.4.25-adeos read-onlyappend="quite devfs=mount acpi=off"
● /usr/src/linux/> liloพเชษฐ บญหนน 40
การตดตง RTOS Kernel● Grub แกไข /boot/grub/menu.lst โดยเพม
title RTAI
root (hd0, X-1)
kernel /boot/vmlinuz-2.4.25-adeos root=/dev/hdaXinitrd /boot/initrd.img-2.4.25-adeos
● ไมตองสงอะไรเพมเตมสามารถ Reboot ไดเลย
พเชษฐ บญหนน 41
การตดตง RTOS Kernel● Boot เครองดวย RTOS Kernel ในเมน RTAI● Boot ไมผานกลบไปใช Linux Kernel เดม เพอปรบแก
config ของ kernel แลวใหสามารถทำาการ Boot Computer ได
● Boot ผานแลวจงไปทำาการตดตงRTAI Modules
พเชษฐ บญหนน 42
การตดตง RTAI Modules● /usr/src/rtai-3.0r4/> make gconfig
พเชษฐ บญหนน 43
การตดตงโปรแกรม EMC● ตดตง Library RCSLIB
– /usr/local/> tar jxvf rcslib.tar.bz2– /usr/local/> cd rcslib/src– /usr/local/rcslib/src> make PLAT=rtai– /usr/local/rcslib/src> make PLAT=linux_rtai
พเชษฐ บญหนน 44
การตดตงโปรแกรม EMC● ตดตงโปรแกรม EMC
– /usr/local/> tar jxvf emc.tar.bz2– /usr/local/cd emc/src– /usr/local/emc/src> make PLAT=rtai– /usr/local/emc/src> make PLAT=linux_rtai
พเชษฐ บญหนน 45