Main Menu
Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - p_chusak

#17
น่าจะประมาณว่า ตั้ง interrupt แบบ on change แล้ว อยากรู้ว่า ตอนที่มันมา มันมาจาก ขาขึ้น หรือขา ลง เท่าที่ดี cpu หลายๆตัว ยังไม่มี register บอกนะครับ ว่ามาจาก ทางไหน คงมีทางเดียวคืออ่าน logic port หลังจาก เข้า อินเตอร์รัพไปแล้ว ผมก็ใช้ วิธีนี้เหมือนกันครับ  และเคยเกิดเรื่องแปลก ขึ้น เช่น ตั้ง interrupt ขาลงไว้ แต่ พอเข้าไปใน interrupt ดันอ่าน port ได้ เป็น  1  สาเหตุมาจาก สัญญาณรบกวนความถี่สูง ทำให้เข้า interrupt แต่ พอเข้าไปแล้ว เมื่อถึงเวลาอ่าน port สถานะกลับ เปลี่ยนไปอีก ทาง ..
#18
ขั้นตอนการ install processing
        ในการนี้ขอเสนอการ install ด้วย GUI ครับ ซึ่ง ง่ายและคุ้นเคย จะได้ไม่ต้องจำคำสั่ง command line ที่ยาวๆซับซ้อน

      1. เตรียมบอร์ด r-pi ของเราให้พร้อม โดยลง os (ผมใช้ ราสเบี้ยน )ต่อจอ ต่อ mouse ต่อ keyboard และทำให้ boot ไปที่ desktop ครับ ซึ่งส่วนนนี้ จะไม่อธิบายนะครับ สามารถหาดูได้ ตามเวปต่างๆที่เป็นพื้นฐานการเริ่มต้นใช้งาน
       2.เปิด browser ขึ้นมา แล้วไปที่ www.processing.org
                     
       

        3. เลือก Download Processing
        4. อันนี้ เราจะจ่ายตังเพื่อสนับการพัฒนา หรือ ถ้าจะโหลดฟรีก็เลือก No Donation แล้ว กด Download



        5. เลือก รุ่นที่จะใช้งาน สำหรับ r-pi ให้เลือก รุ่น Linux ArmV6hf
   


        6. เมื่อ โหลดเสร็จก็ไปที่ ตำแหน่งที่ download ไว้แล้วแตก file ออกมา จาก นั้นเราสาทารถย้าย folder ไป ไว้ที่ ที่เราต้องการได้ อันนี้ผมจะเอาไปไว้ที่                 /home/pi












    7. การรันโปรแกรม เพียง ดับเบิ้ลคลิ๊กที่ ไฟล์ exe  ชื่อ  processing เป็นอันใช้ได้ หรือ หาก คิดถึง command line ก็สามารถพิมพ์ให้รันจากได้เช่นกัน



















    7.  เป็นอันเสร็จพิธีครับ จากนั้น ลองเปิด file ตัวอย่าง มาศึกษาเล่นๆ ก่อนนะครับ บาง file อาจจะรันไม่ได้ ไม่ต้องตกใจครับ เป็นเรื่องปรกติ ครับ เพราะนี่เป็น version แรก ที่ ทำออกมาสำหรับ arm อาจจะมีติดขัดบ้าง แล้วตอนนี้ java ก็เป็นตัวใหม่ ใช้ driver display ใหม่ พบว่า เกิดปัญหาจุกจิกนิดหน่อย กำลังตามแก้กันอยู่ครับ แต่ส่วนใหญ่ก็ใช้งานได้ครับ

      อันนี้ เปิด ตัวอย่าง เล่นๆครับ
               





#19
เริ่มต้นกับ processing
   เมื่อ ปีที่แล้ว(2014)ผมมีงานที่ต้องสร้างโปรแกรมแสดงผลวีดีโอ กับ กราฟฟิคบ้าง ก็ได้ปรึกษาเพื่อนๆ หาเครื่องมือ ง่ายๆเรียนรู้เร็ว ก็ได้คำแนะนำจากผู้ก่อนตั้งเวป ไอยราฟัน ให้รู้จัก เครื่องมือ ตัวหนึ่ง ชื่อ processing มาลองใช้งาน ผลปรากฎว่า ใช้งานได้เป็นอย่างดี จึงได้ใช้ เรื่อยมา จนมาปีนี้ มีงานที่จำเป็นต้องเขียนโปรแกรมบน raspberry-pi ก็พยายามลองใช้  python กับ Qt  ไม่รู้เป็นไร สงสัยเริ่มแก่แล้ว มันไม่ค่อยคล่องเลยติดขัด งึกๆงักๆ กับเรื่องไวยากรณ์ ประมาณว่า ไม่ได้ใช้ {} กับ ; แล้วคิดถึง พอดีไปเจอว่า ตัว processing เอง สามารถ โมดิฟายให้ไปรันบน raspberry-pi ได้ ก็ลองทำดู ซึ่งตอนนั้น เป็น version 2.2.1  เห็นทางออกเลย เขียน งานออกมาได้ฉับไว ได้ใช้ {} และ ; สมใจอยาก  ติอต่อ ทั้ง i/o ทั้ง serial port ได้ครบถ้วน จบงานได้ มาปีนี้ (2015) ตัว processing เอง ออก version3 สำหรับ cpu ARM โดยเฉพาะ ไม่ต้องไปโมดิฟายอะไรแล้ว ดีเลยสามารถเอามาใช้ กับ raspberry-pi ได้เลย    เป็นที่มาของบันทึกนี้ ที่จะบันทึกการใช้งาน processing ไว้ช่วยจำ และเป็นการแนะนำทางเลือกในการพัฒนา application สำหรับ raspberry-pi
   แนะนำ processing
      Processing เป็น เครื่องมือเขียนโปรอแกรมตัวหนึ่ง ที่มีพื้นฐานมาจาก JAVA โดยจัดทำ library ที่ใช้งานบ่อยๆมาเป็น function ที่เรียกใช้ได้เลย ผู้ใช้ไม่ต้องกังวล หรือ ศึกษากฏเกณฑ์ต่างๆของ JAVA มากนัก แต่หากอยากจะลงลึก พบว่า ยังสามารถ ใช้งาน คำสั่งและ class ต่างๆ ของ JAVA ได้อีกด้วย หลักการ คล้ายกับการเขียนโปรแกรมบน mcu ด้วย arduino ซึ่งเขียนด้วยคำสั่งที่ มีสำเร็จมาให้ แต่หากอยากจะเขียนลึกลงไป ก็ยังใช้ไวยากรณ์ของ avr-GCC ได้อีกด้วย ไม่รู้ว่า คนคิดเป็นกลุ่มเดียวกันไหม เพราะหลักการและหน้าตาโปรแกรม คล้าย arduino เลยครับ
   ข้อดีของ processing ( บางข้อเป็นความคิดเห็นส่วนตัว )
-   โหลดฟรีไม่มีค่าใช้จ่าย ที่ www.processing.org
-   มีความสามารถ cross  platform ตามคอนเซปของ java คือ เขียนโปรแกรมครั้งเดียว สามารถนำไปใช้ได้หลาย os คือ windows,Linux,Mac-OSX,Androild
-   ใช้ไวยากรณ์ของ JAVA เป็นหลัก ซึ่งก็แทบจะเป็น ansi-C เป็นการง่ายที่ เหล่านักเขียนโปรแกรม ที่มี code จากฝั่ง mcu แล้วจะเอามาใช้ จะได้ไม่ต้อง เปลี่ยนไวยากรณ์ แค่ copy วาง    ซึ่งตรงนี้กระผมเองเกิดปัญหาตอนเขียน python คือเป็นโรคคิดถึง ; นั่นเอง
-   มี library ต่างๆให้ใช้มากและยังสามารถโหลดเพิ่มได้เรื่อย หากไม่พอใจ ก็ยังสามารถเขียน เพิ่มเองได้ โดยใช้ JAVA
-   มี community ที่ใหญ่พอสมควรหลักๆผมก็เข้าไปที่ www.openprocessing.org และ www.processing.org  จะมีแชร์ code และถามปัญหาได้ ไม่แพ้ฝั่ง python
-   ใช้เวลาในการเรียนรู้ต่ำมาก โดยใช้ concept ของการศึกษาผ่าน example code เหมือน เขียน arduino เลยครับ คือ พอ app เราทำงานได้ ทำให้เรามีกำลังใจในการศึกษาต่อ โปรแกรมแรกของผม ผมเขียนเล่น video 4 เรื่อง พร้อมกัน ใช้เวลาศึกษาตั้งแต่เริ่ม ไม่เกิน 30นาที ก็สำเร็จ ผิดกับตอน ใช้ .net c# ที่ ทำตั้งนาน กว่าจะสำเร็จ
-   รองรับไวยากรณ์ของ python และ java script ( อันนี้ ยังไม่เคยลอง )

ส่วนข้อเสีย มีแน่ นอน แต่ไม่ขอพูดถึง
แปะไว้ก่อน ... เดี่ยวมาต่อ ในส่วนที่เกี่ยวกับ raspberry pi



#20
หลุดที่เดิม อาจจะเป็นที่มอเตอร์เสีย หรือ เกิดแรงเสียดทานจำนวนมากก้ได้นะครับ เพราะ ที่ความเร็วต่ำแรงมันมันจะสูงมากอยู่แล้ว
#21
Projects / Re: 6 dof pararell arm robot
June 06, 2015, 01:11:22 AM
เยี่ยมเลยครับ น่าทึ่งมากเป็นแขนกลที่ราคาย่อมเยา วัสดุไม่แพง หาชิ้นส่วนได้ในตลาดประเทศไทย ใช้งานได้ ตาม spec ที่ต้องการ ไม่ต้องละเอียดเวอร์ๆแต่ราคาจับไม่ได้
จากที่พอมีประสบการณ์อยู่บ้างขอแนะนำบางอย่างเพื่อปรับปรุงใน version ต่อไปครับ
1. ตัวป้อนกลับมุมนั้น จากในรูปเป็น กลไก R ปรับค่าได้ ซึ่งมีอายุการใช้งานจำกัดในกลไกที่เคลื่อนที่ตลอดเวลา อยากให้ใช้ พวก hall effect sensor เช่น AS5040 หรือพวก แอปโซลูทเซนเซอร์ ที่มีขายทั่วไป จะยืดอายุการใช้งานได้ครับ
2. ดูจากรูปร่าง Robot ออกแบบได้เหมือน robot ราคาแพงที่มีการนำอุปกรณ์ที่มีน่ำหนักมากวางใกล้จุดศูนย์กลางมวลเพื่อลดโมเมนต์ของแขน หากผู้ทำลองเสาะหาชุดมอเตอร์และชุดเกียร์ที่เป็นระดับ precision แม้จะราคาสูงขึ้นแต่ผลที่ได้แจ๋วแน่ๆเลยครับ

  รอชมผลงานนะครับ
#22
จัดไป คนเขียน program ไม่ว่าจะเป็น high หรือ low level จะรู้ว่า ส่วน UI นี่แหละ เป็นส่วนที่กินเวลาและทรัพยากรณ์ในการเขียนมากที่สุด ส่วน core process จริงๆ มีนิดเดียว
#23
Microchip PIC / Re: official bootloader
May 29, 2015, 07:09:59 AM
แจ่มเลย
#24
รับเข้ามา 2 สัญญาณ ส่ง ออกไป 2 สัญญาณ เลย หรือเปล่าครับ หมายถึง ตัว device ที่ส่งเข้ามา มีกี่ตัว ครับ