找回密碼
 立即註冊
搜索
查看: 8035|回復: 18

BASIC STAMP 實作例 - 紅外線代用遙控器(中無通訊技術稿)

[複製鏈接]
發表於 2-4-2017 12:58:33 | 顯示全部樓層 |閱讀模式
本帖最後由 VR2ZWP 於 8-4-2017 01:53 編輯

100A6005.jpg   
      ( 100A6005 標示圖二 )
     
本文作者陳嘉樂曾多次投稿中無通訊,本稿印發後,有感於編程內容有需要再加以補充,故再來有關資料,謹再次致謝!
         
     塑膠積木組合玩具原創品牌,已加入了遙控功能組件。初時見本地有售的型號,其遙控器只是兩支上/下推桿式,沒甚新意。及至從互聯網找到相關資料,才知道其紅外線接收器所能解讀的指令集(操作功能),比較單一個原廠遙控器所使用的指令為多,值得研究。  
    嘗試用 BASIC Stamp 發出指令
由於 LPF RC Protocol 設有反向位元(toggle bit),同一個按鈕動作,第二次跟第一次產生的 18-bit 脈衝串是不同的。
每通道(channel)有兩個輸出(output A 和 output B)
聯合指令(combo command)同時控制輸出A和輸出B
一部份指令設有逾時終止(timeout),用BS2SX研發,優化編程後,改用BS2達到減少功耗。
副程式 ir_send 在 BS2SX 版本是用連串 IF THEN 指令;在 bs2 需要改為只用連串 PULSOUT,以配合組合玩具的紅外線通訊規程。
用集成線路 NE556N 產生 38kHz 載波(無穩態線路模式)和延時脈衝(單穩態線路模式)。
BS2 只需發出一個 2us 脈衝給 NE556N,就會產生一個 IR Mark。它是 Start/ High/ Low 抑或 Stop bit,就由隨後的延時時間決定。一個 IR Mark 最長為 1184us。
買來伸縮天線式(27MHz年代)槍形遙控器的機體改裝。鋸開原有的線路板, 保留跟膠殼配合的零件位置, 連繫自己裁製的線路板(BASIC Stamp + NE556N),電池架由 AA x8 改為 AA x6。保留連接插 5位/10位/ 電源線路,兩位 DIP 選擇掣供設定轉動方向。
兩粒串聯的紅外線發射二極管(Tx)是從舊滑鼠(滾珠式)拆出。雖然發射管(Tx)跟組合玩具的接收管(Rx)的波長(wavelength)未必達最佳配合,但有效接收距離仍然可達 3m。








   
   
   
 樓主| 發表於 2-4-2017 13:07:53 | 顯示全部樓層
本帖最後由 VR2ZWP 於 8-4-2017 00:27 編輯

SAMA2926.jpg
     ( SAMA  2926  標示圖三 )
 樓主| 發表於 2-4-2017 13:09:40 | 顯示全部樓層
本帖最後由 VR2ZWP 於 8-4-2017 00:29 編輯

100A5848.jpg
       ( 100A5848 標示圖一 )
 樓主| 發表於 2-4-2017 13:15:43 | 顯示全部樓層
本帖最後由 VR2ZWP 於 8-4-2017 00:34 編輯

100_5767.JPG
       ( 100-5767  紅外綫變速遙控器 )

改進操作

原廠遙控器有四通道供選擇,雖說可以多個遙控器同時操作,但紅外線跟無線電波不同,來自兩個遙控器的脈衝會被隨機混合,結果失效。為減免這情況發生,原廠遙控器把每訊號重複四次(共發五次),每通道有各自的重複週期。

代用遙控器使用兩通道,就是可同時操控四個輸出。每訊號只重覆一次(共發兩次)。這樣可縮短迴環時間(loop period)。

選用 ch2 和 ch3,因為原裝遙控器以推掣選 ch1 和 ch4 較容易, 這樣可兼容多個遙控器同時操作。


                    原廠遙控器               代用遙控器
----------------------------------------------------------------------
  數值檢測          旋轉編碼                 電位器(用 RCTIME,需要時間)
                    正反向各 7 段              左右各 2 段,前 3 段,後 1 段
----------------------------------------------------------------------
  回中位功能        變速遙控器沒有           有        
                    依賴 Servo Motor 定方向   可只用 M-motor
----------------------------------------------------------------------
  控制四個輸出      兩個遙控器並排           已在單機上做到
----------------------------------------------------------------------
  急停(Brake)       該通道的 A 和 B          ch2A, ch2B, ch3A, ch3B 全停
----------------------------------------------------------------------
  耗電              閒置時,電流極少          持續用電( bs2sx 更耗電)
                    AAA x3                   AA x6, 可連線用外部電源
----------------------------------------------------------------------
  操控效果          為孩童遊樂優化           為模型工程車優化
                    發射範圍廣闊             要注意對向
                    體積細小                 不適合操作履帶模型
                    抗干擾較佳           
 樓主| 發表於 2-4-2017 13:19:26 | 顯示全部樓層
本帖最後由 VR2ZWP 於 8-4-2017 08:47 編輯

SAM_5094.JPG
     ( SAM-5094  紅外線接收模組 )

相關事項

一般玩具使用的直流電機(DC motor)速度達每分鐘一千轉以上。組合玩具的“電機”是簡稱,其實內含遊星齒輪組(或稱行星齒輪組, epicyclic/planetary gear),把無載速度(no-load speed)減低至每分鐘 220 至 380 轉,讓小孩可以看清玩具齒輪的相互轉動關係;轉矩(torque)亦因此加大了。

組合玩具的電池盒和電機均內含自復式保險絲(resettable fuse)。

為應對拐彎時,內/外車輪不同的轉動幅度,差速軸/齒(differential gear)都是少不了。

業餘製作,趣味主導。不趕緊的時候,可以看到其他可行方案--尤其是從已停用或廢棄物拆出再用零件,輕易取得,減少廢棄物,練習靈活變通。

RC 的雙重意義 -- Radio Control, Resistance - Capacitance.
 樓主| 發表於 2-4-2017 13:23:31 | 顯示全部樓層
本帖最後由 VR2ZWP 於 8-4-2017 08:59 編輯

100A5588.jpg
     ( 100A5588 用 bs2sx 確定可發出指令 )

後續方向

制動(brake)功能也值得研究 -- 使用額外電流,還是只消耗轉動組件存有的能量(轉矩, momentum) ?

優化四通道操作 -- 試在兩次相同指令之間更新 / 檢測各電位器數值。
 樓主| 發表於 2-4-2017 13:30:02 | 顯示全部樓層
本帖最後由 VR2ZWP 於 8-4-2017 09:03 編輯

100_5805.JPG
        ( 100-5805  連繫自己裁制的線路板 )

由意念至可操作:八個月
工餘,先要家庭時間,然後才是興趣時間。所以成事良久,才整理記錄供分享。至於電路原理圖,無暇以電腦繪製,就讓讀者從程式與本文導引得出好了。
 樓主| 發表於 2-4-2017 13:32:24 | 顯示全部樓層
三輪車與測試組件,用了組合玩具的型號:
8265 挖土機
8293 電機套裝(含 M-motor, 電池箱, LED燈一雙)
8879 紅外線變速遙控器(IR Speed Controller)
8882 特大電機(XL-motor)
8884 接收器(Receiver)
8885 紅外線遙控器(IR Controller)
88004  伺服器電機(Servo Motor)


相關參考
LEGO_Power_Functions_RC.pdf
www.lego.com
http://itlug.8421.info/docs.php
LPF RC Protocol
- - - - - - - - - - - - - -

100_5767,  紅外線變速遙控器
100_5805,  連繫自己裁製的線路板
100A5415,  伸縮天線式遙控器的原裝機體
100A5588,  用bs2sx確定可發出指令
100A5848,  標示圖一
100A6005,  標示圖二
bs2_4.bmp, 程式選段一
bs2_6.bmp, 程式選段二
long_37_1.bmp,  示波器圖像
SAM_5094,  紅外線接收模組
SAMA2926,  標示圖三

IR_LEGO.bs2,  程式碼

 樓主| 發表於 7-4-2017 22:19:18 | 顯示全部樓層
bs2_4.jpg
 樓主| 發表於 7-4-2017 22:23:12 | 顯示全部樓層
bs2_6.jpg
您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則

手機版|小黑屋|存檔|中華業餘無線電研究會網站

GMT+8, 29-3-2024 22:48 , Processed in 0.050754 second(s), 23 queries , Gzip On.

本討論區基於 Discuz! X3.5

版權所有 © 2001-2024 中華業餘無線電研究會有限公司,保留一切權利


重要聲明:本討論區是以即時上載留言的方式運作,中華業餘無線電研究會對所有留言的真實性、完整性及立場等,不負任何法律責任。而一切留言之言論只代表留言者個人意見,並非本網站之立場,讀者及用戶不應信賴內容,並應自行判斷內容之真實性。於有關情形下,讀者及用戶應尋求專業意見(如涉及醫療、法律或投資等問題)。 由於本討論區受到「即時上載留言」運作方式所規限,故不能完全監察所有留言,若讀者及用戶發現有留言出現問題,請聯絡我們。中華業餘無線電研究會有權刪除任何留言及拒絕任何人士上載留言(刪除前或不會作事先警告及通知),同時亦有不刪除留言的權利,如有任何爭議,管理員擁有最終的詮釋權。用戶切勿撰寫粗言穢語、誹謗、渲染色情暴力或人身攻擊的言論,敬請自律。本網站保留一切法律權利。

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