急問!!!三個關於LabVIEW軟體與軸卡的使用問題

各位先進前輩您們好:

我最近東拼西湊一台中古的四軸水平式機械手臂,利用LabVIEW軟體(2011)與軸卡(泓格PS400)對馬達下Pulse數,讓手臂移動到指定位置,不過在過程中遇到一些問題,因此想請教各位先進前輩

1.由於我的手臂馬達(Mitsubish)型號比較老舊,因此沒有Encoder輸出介面,所以手臂在移動過程中的每個位置都是相對性而非獨立性,因此無法建立一個完整的座標系統,希望各位先進前輩可以提供建立座標系統的方法讓我學習參考

2.我的軸卡(泓格PS400)LabVIEW函式庫dwRange,速度設定Range暫存器的值是16,000~8,000,000,也就是速度最快只有8000,但是軸卡本身內建的程式速度可以大於8000,因此想請教各位先進前輩,函式庫dwRang速度設定Range暫存器的上限要如何作修改,或是有其他的方式可以增加速度的上限

3.我想利用NI Vision Assistant搭配Webcam作出及時影像追蹤的程式,我的做法是先用Vision Assistant轉出一個利用Snap功能的vi檔,並把程式裡的Snap改成Grab並加上For loop,希望可以利用這樣的方式作出及時影像的畫面,但是無法成功,希望各位先進前輩可以提供我解決方式

以上三個問題麻煩請各位先進前輩幫忙解惑,麻煩您們費心了,謝謝! 

[QUOTE=SUKI67]

各位先進前輩您們好:

我最近東拼西湊一台中古的四軸水平式機械手臂,利用LabVIEW軟體(2011)與軸卡(泓格PS400)對馬達下Pulse數,讓手臂移動到指定位置,不過在過程中遇到一些問題,因此想請教各位先進前輩

1.由於我的手臂馬達(Mitsubish)型號比較老舊,因此沒有Encoder輸出介面,所以手臂在移動過程中的每個位置都是相對性而非獨立性,因此無法建立一個完整的座標系統,希望各位先進前輩可以提供建立座標系統的方法讓我學習參考
我的使用經驗是我也沒有用過encoder來做回授信號,主要我是利用回home點來當做起始點

2.我的軸卡(泓格PS400)LabVIEW函式庫dwRange,速度設定Range暫存器的值是16,000~8,000,000,也就是速度最快只有8000,但是軸卡本身內建的程式速度可以大於8000,因此想請教各位先進前輩,函式庫dwRang速度設定Range暫存器的上限要如何作修改,或是有其他的方式可以增加速度的上限
我沒有使用過該卡片,這點我想你直接問廠商會較快或是有使用經驗的人

3.我想利用NI Vision Assistant搭配Webcam作出及時影像追蹤的程式,我的做法是先用Vision Assistant轉出一個利用Snap功能的vi檔,並把程式裡的Snap改成Grab並加上For loop,希望可以利用這樣的方式作出及時影像的畫面,但是無法成功,希望各位先進前輩可以提供我解決方式
如果你有安裝Vision Development Module的話可以參考以下範例

以上三個問題麻煩請各位先進前輩幫忙解惑,麻煩您們費心了,謝謝! 

[/QUOTE]

非常感謝ancle前輩的建議,我會根據您提供的方式馬上去做.

另外還有一些問題想向您請教,就是關於第一點您建議用home點作起始點,並接著尋找我要移動的位置,看到這裡我又產生一些疑點,希望您可以幫我指點迷津
1.我在找位置的過程中,由於手臂上有兩顆馬達移動的軌跡是呈現扇型的移動而非直線移動,因此在找位置時往往要先移動一顆馬達之後再移動另一顆馬達,將兩顆馬達調整到我要的位置,如此做法實在是費時又費力,所以想請教ancle前輩是如何尋找位置,可以讓我學習並解惑
2.以home點作起始點,我要如何確保這個起始點是保持唯一固定不變的位置,萬一我更換Sensor之後造成偏差,導致home點位置有所偏移,致使我原本找好的位置都偏移了,這樣該如何解決克服
3.不知道您是用何種Sensor作歸零home的動作,希望可以向您學習不一樣的歸零方式
以上問題麻煩您費心了,謝謝!
SUKI6741297.5560416667

[QUOTE=SUKI67]

1.我在找位置的過程中,由於手臂上有兩顆馬達移動的軌跡是呈現扇型的移動而非直線移動,因此在找位置時往往要先移動一顆馬達之後再移動另一顆馬達,將兩顆馬達調整到我要的位置[/QUOTE]
 
你要找人幫你推導2個旋轉軸的座標轉換公式
輸入臂長1,角度1,臂長2,角度2(臂長1,臂長2為常數)
 
 f(angle1,angle2)=f(x,y)
 
不過雖然左右兩邊都只有二個變數,但是
同一個x,y值可能會有二組以上的angle1及angle2的解出現(奇異解)

[QUOTE=SUKI67] 非常感謝ancle前輩的建議,我會根據您提供的方式馬上去做.

另外還有一些問題想向您請教,就是關於第一點您建議用home點作起始點,並接著尋找我要移動的位置,看到這裡我又產生一些疑點,希望您可以幫我指點迷津
1.我在找位置的過程中,由於手臂上有兩顆馬達移動的軌跡是呈現扇型的移動而非直線移動,因此在找位置時往往要先移動一顆馬達之後再移動另一顆馬達,將兩顆馬達調整到我要的位置,如此做法實在是費時又費力,所以想請教ancle前輩是如何尋找位置,可以讓我學習並解惑
我之前的使用經驗是利用Home Switch接點,一般是使用近接開關,通常是硬體開關接到接線盒的接點,軟體部份各家廠商都會有應用程式可以用來調整當回Home點後需要多少offset
2.以home點作起始點,我要如何確保這個起始點是保持唯一固定不變的位置,萬一我更換Sensor之後造成偏差,導致home點位置有所偏移,致使我原本找好的位置都偏移了,這樣該如何解決克服
遇到這種問題,通常都會再重新找Home點即可
3.不知道您是用何種Sensor作歸零home的動作,希望可以向您學習不一樣的歸零方式
第一問題已說明
以上問題麻煩您費心了,謝謝!
PS.補上下圖中Hardware Home指的就是近接開關,Logical Home指的是碰到近接開關後offset的位置
![](upload://sW7bmDNLeiIJsJFKOCWFL8Tv0oq.png)
[/QUOTE]ancle41318.8258680556

加入極限開關可以解決固定位置 ,但是沒有光學尺… 移動時的座標一定只有相對位置

非常感謝YuLuw777前輩的建議,我已經去找了平面反向運動學的方程式,內容類似您提到的f(angle1,angle2)=f(x,y),不過方程式只有推導出一個角度的公式,另外一個角度目前推導不出來,不曉得您是否有認識可以推導此類方程式的相關人士或是可參考的相關書籍,圖形與方程式如下:


![](upload://qlVtdD2V12WcOZCZ9UDikIXSnax.jpeg)

麻煩您費心了,謝謝!

再次謝謝ancle前輩提供的寶貴經驗,我目前依照您的建議用了近接開關作Home,但是過程中又出現了一些問題,因此想跟您請教一下.誠如您在文中提及的部分,Logical Home指的是碰到近接開關後offset的位置,我在程式中並未設定   offset的值,但是手臂在Home完畢之後會出現反彈離開Sensor的現象,有時卻會停在Sensor上,不曉得這樣的情形是否為異常?應該如何改善這樣的現象產生?麻煩您費心了,謝謝!

非常感謝mthunter前輩的訊息,我也有去看過光學尺的原理,但是不甚了解,不過我看起來好像是能透過光學尺作出一個模擬座標系統,不知道我的想法是否有誤,希望您可以提供給我一個明確的方向與光學尺的相關知識,麻煩您費心了,謝謝!

[QUOTE=SUKI67]

再次謝謝ancle前輩提供的寶貴經驗,我目前依照您的建議用了近接開關作Home,但是過程中又出現了一些問題,因此想跟您請教一下.誠如您在文中提及的部分,Logical Home指的是碰到近接開關後offset的位置,我在程式中並未設定   offset的值,但是手臂在Home完畢之後會出現反彈離開Sensor的現象,有時卻會停在Sensor上,不曉得這樣的情形是否為異常?應該如何改善這樣的現象產生?麻煩您費心了,謝謝!

[/QUOTE]

我用過不同廠商的軸卡,以下示意圖是NI的軸卡設定提供給你參考

謝謝ancle前輩的圖示說明,我用的泓格(PS400)軸卡也有類似的介面,不過我將offset的值設為0之後,還是會出現機構反彈現象與機構卡在sensor上的現象,不知道是什麼原因造成此現象,不知道您之前是否有預過類似的經驗可以提供給我參考學習.麻煩您費心了,謝謝!

[QUOTE=SUKI67]謝謝ancle前輩的圖示說明,我用的泓格(PS400)軸卡也有類似的介面,不過我將offset的值設為0之後,還是會出現機構反彈現象與機構卡在sensor上的現象,不知道是什麼原因造成此現象,不知道您之前是否有預過類似的經驗可以提供給我參考學習.麻煩您費心了,謝謝![/QUOTE]

1.offset端看你的需求,如果有使用home點sensor的話通常不能設為0,要看你的1 pulse(step)是幾個mm來決定,它的單位是pulse(step),一般會設個距離5~10mm左右不一定

2.因為沒有看到你的硬體圖片所以沒有辦法知道你的問題是出在哪裡?

ancle41331.4703125

謝謝ancle前輩的寶貴經驗,我將offset輸入值之後就未再發生機構卡在Sensor內的情形,非常感謝您的幫忙!