Robofun 機器人論壇

 找回密碼
 申請會員
搜索
熱搜: 活動 交友 discuz
查看: 5649|回復: 19
打印 上一主題 下一主題

機械手臂的控制

[複製鏈接]
nichal 該用戶已被刪除
跳轉到指定樓層
1#
發表於 2008-11-28 14:35:38 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
1. MCU選用
2. 電路規劃
3. 角度確認
4. PWM程式

以上為目前進度
接下來是完成連線通訊的部分
敬請期待


[ 本帖最後由 nichal 於 2008-11-28 14:38 編輯 ]

1977649455.jpg (26 KB, 下載次數: 324)

1977649455.jpg

1977649461.jpg (73.81 KB, 下載次數: 303)

1977649461.jpg
2#
發表於 2008-11-28 22:00:59 | 只看該作者
請問一下大大不知道什麼原因,我家伺服機分開供電就會有問題!

電源->8051->訊號線->伺服機  沒問題
└---------------┘

電源1->8051->訊號線->伺服機  有問題
電源2--------------┘
3#
發表於 2008-11-28 22:18:40 | 只看該作者
原帖由 wboe 於 2008-11-28 22:00 發表
請問一下大大不知道什麼原因,我家伺服機分開供電就會有問題!

電源->8051->訊號線->伺服機  沒問題
└---------------┘

電源1->8051->訊號線->伺服機  有問題
電源 ...

兩電源的接地有共接嗎?
4#
發表於 2008-11-29 00:47:27 | 只看該作者
經大大提醒,發現....沒有共地
然後又發現...一樣會亂轉。

突然想到電源供應器的電流可能太低了

調高之後,解決問題了~^^
nichal 該用戶已被刪除
5#
 樓主| 發表於 2008-11-29 07:17:49 | 只看該作者
恭喜大大解決問題了~~

電源問題在SERVO控制也是一門大學問唷~~~
因為碳刷馬達在啟動時都會有一股強勁的瞬間電流
如果POWER不夠力的話
光是在啟動那瞬間
就可能讓所有信號都亂掉了!!!

所以我的電路才規畫了開關元件
一次只開一個SERVO就好
可以避開一下子全開的大電流問題
不過這是治標不治本的作法
先期實驗才這樣處理
最好還是要強固一下電源的規劃
nichal 該用戶已被刪除
6#
 樓主| 發表於 2008-11-30 19:07:44 | 只看該作者
5. 通訊準備
6. MCU程式
7. 通訊配線
8. 連線測試

以上為最新進度
持續更新中~~~

2468PIC.jpg (61.41 KB, 下載次數: 281)

2468PIC.jpg

ECA8PIC.jpg (71.24 KB, 下載次數: 269)

ECA8PIC.jpg
7#
發表於 2008-12-1 00:46:11 | 只看該作者
大大進度神速阿!!!~~

強一點的8051跑起來真的不用顧慮太多><!!

目前用的8052只能跑到16通道!!!~還在測試中
nichal 該用戶已被刪除
8#
 樓主| 發表於 2008-12-1 07:25:03 | 只看該作者
wboe大大加油~~~
傳統51雖然限制很多
但卻可以激發更好的創意與程式功力唷~~~

您給我的程式可能會晚一點再試
我會先把手上這個基本的手臂動作完成
一起努力吧!!!
9#
發表於 2008-12-1 09:37:47 | 只看該作者
傳統51真的是給他有夠慢!!!

不過真的可以激發程式能力>"<

我給你得程式押~有空再看就好了!!!

應該是沒有什麼難度~^^有問題在交流交流

看來這禮拜你家的機器手就可以完成了~嘿嘿~~恭喜阿

----------------------------------順便問一下程式-------------------------------

  pm_width_h[1][um_count]  =  (65536-pwm_width_temp)/256;
  pm_width_l[1][um_count]  =  (65536-pwm_width_temp)%256;

這是我用來在算8051中斷時間的程式碼

是否可以簡化/256與%256呢??

除法與餘數實在太慢了!!!!!不知道是否有更好的方法?!

除法可以用位移的!!那餘數呢??

[ 本帖最後由 wboe 於 2008-12-1 09:45 編輯 ]
nichal 該用戶已被刪除
10#
 樓主| 發表於 2008-12-1 10:29:53 | 只看該作者

回復 9# 的帖子

用mask跟型態宣告就可以了

(unsigned char) ((65536-pwm_width_temp) & 0x00ff);
11#
發表於 2008-12-1 17:26:34 | 只看該作者
感謝nichal大大呀
一語點破夢中人~~呵呵

的確編譯之後程式碼少非常多。

不知道是能力不夠還硬體不足,最近一值再想用89S52做16通道有點無言的感覺。

像精度這麼高的控制用這麼低階的MCU使用起來還真的有點綁手綁腳的。

不知道大大是否看過有人成功用89S52做出16通道呢??
nichal 該用戶已被刪除
12#
 樓主| 發表於 2008-12-1 17:54:17 | 只看該作者

回復 11# 的帖子

我想應該是有啦~~~
只是很多高手都對網路不熟
再不就是打字速度不快
所以我們就比較沒機會看到了~~~

仔細想想
如果用52的話
有四組8bits的Timer0,1
加上一組16bits的Timer2
應該是可以變化很多東西了
把52的datasheet多K幾次
再把所有功能排列組合試試看
有需要的話可以再對52超頻(22.1MHz)
這樣就很夠用了

如果再啟動外部中斷
並外掛振盪信號
........
(這樣系統資源應該會全被吃光光 )


先求有再求好囉~~~


[ 本帖最後由 nichal 於 2008-12-1 17:58 編輯 ]
13#
發表於 2008-12-1 20:46:38 | 只看該作者
nichal大大這句話@@

如果再啟動外部中斷
並外掛振盪信號

看不太懂>"<

啟動外部中斷外掛振盪器??89S52好像就一定要接外部振盪吧@@?

目前使用的是11.0592MHZ 不知道你所指的是這個嗎??

[ 本帖最後由 wboe 於 2008-12-1 21:29 編輯 ]
nichal 該用戶已被刪除
14#
 樓主| 發表於 2008-12-1 22:51:03 | 只看該作者

回復 13# 的帖子

您誤解了
我的意思是利用外部中斷的INT0與INT1
掛上低頻的振盪器(50Hz)
就多兩組Timer可以用了
拿來當20mS的切換信號剛好
15#
發表於 2008-12-2 00:55:21 | 只看該作者
大大~請容許我叫你~~~神~~

完全沒想到~可以這樣用~哈哈~~~~~果真超厲害的啦!!>"<

薑還是老的辣!!!!~嘿嘿~~要多多在你身上挖寶一下了~><
nichal 該用戶已被刪除
16#
 樓主| 發表於 2008-12-2 06:56:02 | 只看該作者
大大您過獎了
多K幾次datasheet就會多一些想法出來
林先生的書
我前前後後看不下20次
每次看都有新的想法唷~~~

不過外部中斷是系統最高優先的中斷
所以一旦這樣用了之後
系統資源會被外部中斷吃掉很多
所以一定要低頻
頻率太高的話整個系統都不用工作了.....
17#
發表於 2008-12-3 19:11:38 | 只看該作者
看來應該去借本8051回來讀一下!!~

有些觀念還真的不是很好!!!



網路資料固然多,但是真的零零散散。
nichal 該用戶已被刪除
18#
 樓主| 發表於 2008-12-3 22:27:24 | 只看該作者
9. 控制板組裝
10. PC操作界面

總算完成了~~~
應該花了三個星期有囉!!!
雖然不滿意
但勉強可以接受
下次要換好一點的馬達來用~~~
19#
發表於 2008-12-6 09:02:53 | 只看該作者
可喜可賀, 完成度百分百!!

抖動的問題是不是因為壓克力板的剛性不足(太有彈性了)??

還是因為伺服馬達無法精準的固定在所定位的角度上呢?
nichal 該用戶已被刪除
20#
 樓主| 發表於 2008-12-6 20:38:16 | 只看該作者
史丹利大大
其實兩個原因都有
一個是在靜止狀態就不停抖動
這屬於馬達問題
另一個是在動作中因慣性導致的抖動
這是壓克力的問題
不過兩個問題其實都能解決
第一個就是換馬達
不過現在沒預算
只好再等等.......
第二個就是我文章中提到的漸進式PWM控制
將送出的PWM自動切割
每次修正的間隔不超過1count
這樣就可以改善很多
只是動作會變得比較慢
大概是這樣囉~~~
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

小黑屋|手機版|Archiver|機器人論壇 from 2005.07

GMT+8, 2024-11-24 02:56 , Processed in 0.188508 second(s), 10 queries , Apc On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表