Author Topic: ปลุกชีพกับ dc servo drive control  (Read 13658 times)

0 Members and 1 Guest are viewing this topic.

Offline takorn

  • Full Member
  • ***
  • Thank You
  • -Given: 19
  • -Receive: 207
  • Posts: 96
Re: ปลุกชีพกับ dc servo drive control
« Reply #45 on: September 15, 2013, 09:29:03 AM »
...
ถ้าจบเรื่องsmc3a จะไปลองdspicต่อครับ เห็นมีopensourceอยู่ แต่ชิบdspic4012 ยังหาไม่ได้ครับ
 ลองดูครับช่วยกันทำ

http://members.shaw.ca/swstuff/dspic-servo.html
...
ครั้งหนึ่งเคยมีเพื่อนเล่นพวกเซอร์โวถ่ามหาชิบ dsPIC30F4012 จากผม วันนี้ทำให้ถึงบางอ้อแสดงว่าเค้าเข้าถึง source code ชุดนี้นี่เอง

ผมเองก็เกือบจะได้ลงมือ เตรียมอาวุธซื้อโน่นนี่มีเตรียบเช่น TI Motor Control Kit ของ Texas Instrument เพราะซอรส์โค้ดเจ้านี้เค้าดี อุปกรณ์อีกตัวหนึ่งคือ USB TAP for ONCE DSC จาก Freescale อันนี้เป็นคู่แข่งกันขายชิปในราคาที่ถูกกว่าเหมือนกับราคา pic กับ avr ประมาณนั้น  ตัวไดรว์ VSD ที่ผมนำเข้ามาขายใช้ชิปของ freescale เลยกะว่าจะยอมเสียบอร์ดขับสักตัวนำมาเป็นชุดทดลอง แต่สุดท้ายก็ไม่ได้เริ่มเพราะรู้ว่าเป็นโปรเจ็คที่ยากและยาว สำหรับผมเมื่อได้ทำแล้วอยากจะให้ตลอดรอดฝั่งคาดว่าต้องใช้เวลาเป็นปี จำสภาพสมัยหนุ่มๆทำ R&D ได้ต้องขลุกตัวอยู่ให้ห้องทำงาน กินกาแฟวันละหลายแก้วตอนนั้นมันส์และสนุก พอมีลูกสองเมียหนึ่งไม่สามารถทำอะไรอย่างนั้นได้อีก จึงต้องหาอะไรที่ง่ายกว่าทำ ท้ายสุดก็ไม่ได้เริ่มโปรเจ็คเซอร์โวของตัวเอง
ใด้อ่านดาต้าของDSpic30f4012 ดูแล้ว ถ้านำมาขับมอเตอร์แล้วคงยอด ด้วยความที่เป็น 16บิท ประสิทธิภาพคงเยี่ยม
ความที่เขารำลือกันมาว่า แรง เร็ว แม่นยำ และนุ่มนวล ชุดนี้ถ้าใครลงมือขอตามดว้ยคนครับ

แต่ดูๆแล้วเหมือนกับว่าคุณวิระศักดิ์มีของพร้อมอยู่แล้วนะครับ เพียงรอเวลา +อารมย์ลงมือจุดประกายไฟกับ DSP SERVO DRIVE
สมาชิกจะใด้เตรียมตัว +อุปกรณ์ 
(แอบลุ้นนะครับ :))

Offline adisy

  • Sr. Member
  • ****
  • Thank You
  • -Given: 145
  • -Receive: 149
  • Posts: 301
Re: ปลุกชีพกับ dc servo drive control
« Reply #46 on: September 15, 2013, 11:22:32 AM »
ผมได้สอบถามทาง ETT  ทางร้านไม่มี 30f4012  จำหน่าย

ไม่ทราบใครพอจะมีแหล่ง บ้างครับ


ปล. คุณtakron ครับรบกวนอีกนิดหนึ่งครับ เรื่องการ save mode m3 ของcode SMC ผมใช้คำสั่ง W0 ตามที่คุณเป๋ แนะนำเซฟค่าพารามิเตอร์ได้แต่ ... เซฟโหมดการทำงานไม่ได้ ครับ ::) 
ของเหลือใช้จากโรงงาน
www.facebook.com/AutomationParts1

Offline kamwait

  • Jr. Member
  • **
  • Thank You
  • -Given: 9
  • -Receive: 8
  • Posts: 23
Re: ปลุกชีพกับ dc servo drive control
« Reply #47 on: September 15, 2013, 01:08:18 PM »
ผมได้สอบถามทาง ETT  ทางร้านไม่มี 30f4012  จำหน่าย

ไม่ทราบใครพอจะมีแหล่ง บ้างครับ


ปล. คุณtakron ครับรบกวนอีกนิดหนึ่งครับ เรื่องการ save mode m3 ของcode SMC ผมใช้คำสั่ง W0 ตามที่คุณเป๋ แนะนำเซฟค่าพารามิเตอร์ได้แต่ ... เซฟโหมดการทำงานไม่ได้ ครับ ::)

ที่ es มีครับราคาตัวละ 168.10 บาท แต่มีแค่ตัวถัง SOIC

Offline adisy

  • Sr. Member
  • ****
  • Thank You
  • -Given: 145
  • -Receive: 149
  • Posts: 301
Re: ปลุกชีพกับ dc servo drive control
« Reply #48 on: September 15, 2013, 09:07:47 PM »
ผมได้สอบถามทาง ETT  ทางร้านไม่มี 30f4012  จำหน่าย

ไม่ทราบใครพอจะมีแหล่ง บ้างครับ


ปล. คุณtakron ครับรบกวนอีกนิดหนึ่งครับ เรื่องการ save mode m3 ของcode SMC ผมใช้คำสั่ง W0 ตามที่คุณเป๋ แนะนำเซฟค่าพารามิเตอร์ได้แต่ ... เซฟโหมดการทำงานไม่ได้ ครับ ::)

ที่ es มีครับราคาตัวละ 168.10 บาท แต่มีแค่ตัวถัง SOIC

ขอบคุณมากเลยครับ  SOIC นี้มันมี Socket IC ใมครับหรือว่าต้อง บัดกรี ลงบอร์ดเลย   
ของเหลือใช้จากโรงงาน
www.facebook.com/AutomationParts1

Offline เป๋

  • The Knowledge Giver
  • Full Member
  • ***
  • Thank You
  • -Given: 38
  • -Receive: 288
  • Posts: 117
  • dm_con@yahoo.com
Re: ปลุกชีพกับ dc servo drive control
« Reply #49 on: September 15, 2013, 09:25:22 PM »
เมื่อหลายปีก่อนผมเคยลอง dsPIC  กับ source code ตัวที่กำลังพูดถึงกันนี่ แต่ลอง compile แล้วerror ตรึม
ผมอ่อนแอกับ C30 มากๆ ไม่รู้จะแก้ตรงไหนไม่ใช่สายตรง  ต้องเก็บลงกล่อง  ผมใช้บอร์ดอแดปเตอร์แปลงSOIC เป็น DIP
ยังขอก็ปูเสื่อรอ HEX file เอางั้นเลย

Offline เป๋

  • The Knowledge Giver
  • Full Member
  • ***
  • Thank You
  • -Given: 38
  • -Receive: 288
  • Posts: 117
  • dm_con@yahoo.com
Re: ปลุกชีพกับ dc servo drive control
« Reply #50 on: September 15, 2013, 09:43:32 PM »
เจอแล้ว ของETT



ถ้าเค้าเลิกผลิตผมจะส่งที่มีอยู่ให้ (ฟรีครับ)

สู้ๆ ลุ้น ครับ

Offline adisy

  • Sr. Member
  • ****
  • Thank You
  • -Given: 145
  • -Receive: 149
  • Posts: 301
Re: ปลุกชีพกับ dc servo drive control
« Reply #51 on: September 16, 2013, 08:43:00 AM »
เมื่อหลายปีก่อนผมเคยลอง dsPIC  กับ source code ตัวที่กำลังพูดถึงกันนี่ แต่ลอง compile แล้วerror ตรึม
ผมอ่อนแอกับ C30 มากๆ ไม่รู้จะแก้ตรงไหนไม่ใช่สายตรง  ต้องเก็บลงกล่อง  ผมใช้บอร์ดอแดปเตอร์แปลงSOIC เป็น DIP
ยังขอก็ปูเสื่อรอ HEX file เอางั้นเลย

จากที่คุณเป๋ บอกว่า Error เยอะก็เลย มานั่งคิดส่าตอนนี้เอาเรื่อง code ของโปรแกรมให้ จบก่อน ฮาร์ดแวร์ ค่อยว่ากัน

แต่เท่าที่ดู มันมี Hex code มาให้ด้วยนะครับ
ของเหลือใช้จากโรงงาน
www.facebook.com/AutomationParts1

Offline adisy

  • Sr. Member
  • ****
  • Thank You
  • -Given: 145
  • -Receive: 149
  • Posts: 301
Re: ปลุกชีพกับ dc servo drive control
« Reply #52 on: October 04, 2013, 09:12:10 PM »
หลังจากที่หาทางอยู่นาน เรื่องการทำให้ code smc จำค่าเริ่มต้นในโหมด3ก็ สำเร็จโดยการเพิ่มคำสั่ง
ldi r27, 3
Mov r8, r27
ทำงานที่โหมด3ตั้งแต่เริ่มจ่ายไฟ แต่รวนบ้าง 10ครั้ง รวน3ครั้ง
อาการคือ ค่าp4 จากที่ตั้งใว้ 180จะกลับมาเป็น0
อีกอาการคือ รวนแบบว่า จ่ายไฟเข้าวงจรแล้ว mcuจะรีเซ็ทตัวเองตลอดเวลา ต้องถอดชุดสายไฟที่เอาไปเลี้ยงเอนโค็ดเดอร์ออก แล้วจึงค่อยจ่ายไฟ แล้วจึงเสียบสายไฟเลี้ยงเอนโค็ดเดอร์
ทั้งสองอาการ เป็นสลับกันในบางครั้ง

ส่วนcode smc3a ตอนนี้เริ่มต้นโหมด3ได้แล้ว แต่พอเอามือหมุนแกนมอเตอร์ ไฟแสดงสถานะกลับ เหลืองแล้วแดงทุกครั้ง ยังแก้ไม่ได้
ของเหลือใช้จากโรงงาน
www.facebook.com/AutomationParts1

Offline Weerasak

  • Global Moderator
  • Hero Member
  • *****
  • Thank You
  • -Given: 1466
  • -Receive: 3745
  • Posts: 2756
Re: ปลุกชีพกับ dc servo drive control
« Reply #53 on: October 04, 2013, 09:32:05 PM »
...
อีกอาการคือ รวนแบบว่า จ่ายไฟเข้าวงจรแล้ว mcuจะรีเซ็ทตัวเองตลอดเวลา ต้องถอดชุดสายไฟที่เอาไปเลี้ยงเอนโค็ดเดอร์ออก แล้วจึงค่อยจ่ายไฟ แล้วจึงเสียบสายไฟเลี้ยงเอนโค็ดเดอร์
...
เรื่องสัญญาณรบกวนเข้า mcu ขณะที่มีสายไฟระโยงระยางในรูปแบบทดลองหรือ prototype เป็นเรื่องปรกติ ขนาดว่าดีไซน์ pcb ดีๆยังรบกวนได้เลย

Offline adisy

  • Sr. Member
  • ****
  • Thank You
  • -Given: 145
  • -Receive: 149
  • Posts: 301
Re: ปลุกชีพกับ dc servo drive control
« Reply #54 on: October 05, 2013, 12:57:47 PM »
ข้อสงสัยมีสองข้อครับ รบกวนขอคำปรึกษาด้วย
อาการรวนที่กล่าวมาข้างต้นเกิดหลังจากที่แกไขcode เพิ่มเข้าไป3บรรทัด
1เป็นไปได้ใหมที่เกิดจากการแก้ไขรีจีสเตอร์
2ถ้าคิดว่าเป็นที่code ทำใมอาการรวนของบอร์ดจึงต่างกันหลายอาการ

ปล. สุดท้ายจะลองทำpcbดูครับหวังว่ามันจะดีขึ้น
ของเหลือใช้จากโรงงาน
www.facebook.com/AutomationParts1

Offline chiangchai

  • Jr. Member
  • **
  • Thank You
  • -Given: 1
  • -Receive: 5
  • Posts: 7
Re: ปลุกชีพกับ dc servo drive control
« Reply #55 on: October 05, 2013, 03:39:54 PM »
หลังจากที่หาทางอยู่นาน เรื่องการทำให้ code smc จำค่าเริ่มต้นในโหมด3ก็ สำเร็จโดยการเพิ่มคำสั่ง
ldi r27, 3
Mov r8, r27
ทำงานที่โหมด3ตั้งแต่เริ่มจ่ายไฟ แต่รวนบ้าง 10ครั้ง รวน3ครั้ง
อาการคือ ค่าp4 จากที่ตั้งใว้ 180จะกลับมาเป็น0
อีกอาการคือ รวนแบบว่า จ่ายไฟเข้าวงจรแล้ว mcuจะรีเซ็ทตัวเองตลอดเวลา ต้องถอดชุดสายไฟที่เอาไปเลี้ยงเอนโค็ดเดอร์ออก แล้วจึงค่อยจ่ายไฟ แล้วจึงเสียบสายไฟเลี้ยงเอนโค็ดเดอร์
ทั้งสองอาการ เป็นสลับกันในบางครั้ง

ส่วนcode smc3a ตอนนี้เริ่มต้นโหมด3ได้แล้ว แต่พอเอามือหมุนแกนมอเตอร์ ไฟแสดงสถานะกลับ เหลืองแล้วแดงทุกครั้ง ยังแก้ไม่ได้

ขออนุญาตนิดหนึงนะครับ พอดีเคยทำเล่นมานานแล้ว ถ้าเราต้องการที่จะเปลี่ยนค่าเริ่มต้น เราสามารถเปลี่ยนได้โดยไม่ต้องเขียนโค๊ดเพิ่มก็ได้ ให้ลองเปลี่ยนตามที่ผมวงกลมไว้ จาก 0 เปลี่ยนเป็น 3 ภาพแรกคือไฟล์ SMC3 ส่วนภาพที่สองเป็นไฟล์ SMC3a ผมเปลียนแล้วไม่มีปัญหาครับใช้ได้เลย



Offline adisy

  • Sr. Member
  • ****
  • Thank You
  • -Given: 145
  • -Receive: 149
  • Posts: 301
Re: ปลุกชีพกับ dc servo drive control
« Reply #56 on: October 05, 2013, 06:42:53 PM »
หลังจากที่หาทางอยู่นาน เรื่องการทำให้ code smc จำค่าเริ่มต้นในโหมด3ก็ สำเร็จโดยการเพิ่มคำสั่ง
ldi r27, 3
Mov r8, r27
ทำงานที่โหมด3ตั้งแต่เริ่มจ่ายไฟ แต่รวนบ้าง 10ครั้ง รวน3ครั้ง
อาการคือ ค่าp4 จากที่ตั้งใว้ 180จะกลับมาเป็น0
อีกอาการคือ รวนแบบว่า จ่ายไฟเข้าวงจรแล้ว mcuจะรีเซ็ทตัวเองตลอดเวลา ต้องถอดชุดสายไฟที่เอาไปเลี้ยงเอนโค็ดเดอร์ออก แล้วจึงค่อยจ่ายไฟ แล้วจึงเสียบสายไฟเลี้ยงเอนโค็ดเดอร์
ทั้งสองอาการ เป็นสลับกันในบางครั้ง

ส่วนcode smc3a ตอนนี้เริ่มต้นโหมด3ได้แล้ว แต่พอเอามือหมุนแกนมอเตอร์ ไฟแสดงสถานะกลับ เหลืองแล้วแดงทุกครั้ง ยังแก้ไม่ได้

ขออนุญาตนิดหนึงนะครับ พอดีเคยทำเล่นมานานแล้ว ถ้าเราต้องการที่จะเปลี่ยนค่าเริ่มต้น เราสามารถเปลี่ยนได้โดยไม่ต้องเขียนโค๊ดเพิ่มก็ได้ ให้ลองเปลี่ยนตามที่ผมวงกลมไว้ จาก 0 เปลี่ยนเป็น 3 ภาพแรกคือไฟล์ SMC3 ส่วนภาพที่สองเป็นไฟล์ SMC3a ผมเปลียนแล้วไม่มีปัญหาครับใช้ได้เลย



ว๊าว ..  :o   ขอบคุณมากเลยครับ  :D นั่งงง อยู่นาน
พอดีผมใช้code smc ผมต้องเปลี่ยน ldi   r16, 0      ;Load servo parms form bank 0 ให้เป็น r16,3 รึเปล่าครับ



 
ของเหลือใช้จากโรงงาน
www.facebook.com/AutomationParts1

Offline chiangchai

  • Jr. Member
  • **
  • Thank You
  • -Given: 1
  • -Receive: 5
  • Posts: 7
Re: ปลุกชีพกับ dc servo drive control
« Reply #57 on: October 05, 2013, 10:00:46 PM »
ถ้าเป็นไฟล์ smc ให้แก้ไขดังนี้ครับ

อันเดิม
          clr   _Mode,3      ;Servo mode = 0    (ยกเลิกบรรทัดนี้)
   rcall   init_servo   ;/

แก้ไขเป็น

   ldi   r16,3      ;Servo mode = 3   
   mov   _Mode, r16
   rcall   init_servo   ;/

ลองดูนะครับ

Offline chiangchai

  • Jr. Member
  • **
  • Thank You
  • -Given: 1
  • -Receive: 5
  • Posts: 7
Re: ปลุกชีพกับ dc servo drive control
« Reply #58 on: October 05, 2013, 10:13:16 PM »
ขอโทษครับโค๊ดด้านบนผิดนิดหน่อย แก้ไขใหม่นะครับ
ถ้าเป็นไฟล์ smc ให้แก้ไขดังนี้ครับ

อันเดิม
   clr   _Mode     ;Servo mode = 0    (ยกเลิกบรรทัดนี้) กระทู้ข้างบนผิดบรรทัดนี้
   rcall   init_servo   ;/

แก้ไขเป็น

   ldi   r16,3      ;Servo mode = 3   ; (เพื่มใหม่)
   mov   _Mode, r16                       ; (เพื่มใหม่)
   rcall   init_servo   ;/

ลองดูนะครับ

Offline adisy

  • Sr. Member
  • ****
  • Thank You
  • -Given: 145
  • -Receive: 149
  • Posts: 301
Re: ปลุกชีพกับ dc servo drive control
« Reply #59 on: October 06, 2013, 10:02:33 AM »
ขอโทษครับโค๊ดด้านบนผิดนิดหน่อย แก้ไขใหม่นะครับ
ถ้าเป็นไฟล์ smc ให้แก้ไขดังนี้ครับ

อันเดิม
   clr   _Mode     ;Servo mode = 0    (ยกเลิกบรรทัดนี้) กระทู้ข้างบนผิดบรรทัดนี้
   rcall   init_servo   ;/

แก้ไขเป็น

   ldi   r16,3      ;Servo mode = 3   ; (เพื่มใหม่)
   mov   _Mode, r16                       ; (เพื่มใหม่)
   rcall   init_servo   ;/

ลองดูนะครับ

ขอบคุณมากครับ ... เดี๊ยวลองครับ  ;D
ของเหลือใช้จากโรงงาน
www.facebook.com/AutomationParts1