光編碼器計數

我有一個案子,是用到光編碼器來計算物品的位移數量,到達位置後會有另一個動作,我是用6025E卡來做訊號的連結,光編碼器則是用SUMTAK 的LBC-104-600他有5條線,白色是Vcc我把他接在34腳位,黑色是0V我把他接在33腳位,另外的紅色A我把他接在47腳位,綠色B我把他接在41腳位,在程式執行時卻沒有辦法正常的運作(數不到訊號),不知道是不是自己的腳位插錯了,還請有經驗各位幫小弟想一下有哪邊沒有考量到,感謝…。 YiChun38586.606412037

提供給你幾個方式,我沒用過6025E卡片,我以用過DIO卡的經驗提供給你參考,首先

1.6025E的使用手冊有詳細說明Input和Output線路接法,請詳讀

2.你要注意6025E的外部電壓是如何供應,以我使用DIO卡的經驗是不能直接接線到卡片的connector上,還需要透過外部電路,例如,是否需要提升電阻...

 

這裡提供example供你參考,此ex 適用 E系列卡 ,M系列 不適用

使用的編碼器為 MTL 製  MES-20-200 ,分別有紅:VCC 、黑:GND、白:A相 、綠:B相  四腳位

腳位與DAQ卡接續如下

紅 >> +5V(p14) 、 黑 >> DGND(p50) 、 白 >> PFI8_CTR0 SOURCE(p37)、綠 >> DIO6(p16)

程式碼如下,編碼器 A相接入ctr0_source 做邊緣計數,B相接入 DIO 6 腳控制正數與倒數的邏輯

注意第二個設定項vi的  count direction 的選項需選 Externally Controlled,如此接入 DIO 6 腳的 B相才會有作用

encode.vi

![](upload://8i4JCeQCUf2e9y9lbjqxKdzf1g.jpeg)

 

deomaxwell38586.8408680556

感謝ancle大和deomaxwell大,昨天我把兩位的方法都試做了一次,發現我只要把A腳位接在Ctr1_SOURCE(可設定0或1),B腳位接在DIO6(可設定0-6),這樣子就可以讀出訊號了,待會在把圖補上,感謝...

想請問一下<span =bold>deomaxwell大人…ctr0_source 和 ctr1_source  在設定Channel 時做更改就可以了嗎,因為小弟在試的時候ctr0_source 和 ctr1_source 好像沒什麼差別…

不管使用 ch0或ch1 記得direciton項要用Externally CTRL........

接腳方面使用ctr 0時,encode_b相請接dio6,用ctr_1時,encode_b相請接dio7 即可

至於為何這樣接是因為選 Externally CTRL時counter的direction訊號是設計繞接到dio 6..7這兩隻腳上

m系列的卡就不是這樣接......在做max config時就會標明要你接那些腳位,較e系列人性化多了

deomaxwell38588.8554050926