2019年3月11日 星期一

用 PWM 控制夾娃娃機夾爪

買了這玩具回來玩:

夾娃娃機的夾爪, 機台標準品, 此為 3 號爪, 中型爪, 花五百多元買來
另有 2 號爪的小型爪夾小物品用
看起來有趣想做點東西, 但其性能實在太悲劇, 所以測完放棄, 只測夾爪

上個月的新聞:
【逃命潮來了1】月賺1萬變500元 娃娃機台主紛紛認賠殺出 (新聞本地庫存)

要逃命了麼XD 那應該有些零件可買吧? 所以就上網挖看看, 就找到這夾爪


電線只有兩根, 所以也不用想要送指令什麼的, 只能給電
一開始送 5V, 會動, 但要反過來放才會動, 於是加壓到 12V 看起來就正常了
由於看起來構造簡單就拆開來看看, 其實通電時聽聲音就大概知道裡面是啥了


沒錯, 就只是電磁鐵, 和我買之前想的不一樣
這種策略的夾爪夾的力道完全不行, 它沒有止回結構, 如果要像機械手臂有強大夾持力
會需要有蝸輪蝸桿的機構:

圖片來源:Worm drive
把蝸輪接在夾爪關節或是驅動齒輪推動齒軌, 馬達轉動蝸桿驅動
當遇到阻力時蝸桿會阻止蝸輪反轉

由於沒有蝸輪蝸桿機構, 娃娃機夾爪沒通電時中間鐵柱就會順重力自然落下讓夾爪張開
而因為電磁鐵只需要吸引鐵柱, 磁場方向不重要, 只要有就可以
所以這設備不分正負極, 可任意接, 只要有電進去即可
既然只是給電, 那麼要控制強弱最簡單的方法就是 PWM 了

我使用前篇 控制電子紙 2.7inch e-Paper HAT (B) 用過的 WT-18:


接線圖:

WT-18 接地端串了磁珠, 那是防止感應電流, 這玩具只有鐵柱應該是不用, 只是以防萬一
對 WT-18 下命令 $0a04f0# 即可以 240/255 的 PWM 輸出控制夾爪
我的 WT-18 會送出週期為 6.6ms 的 PWM 訊號, 中間切 255 等分
若用別家方案的 MCU 只要能送出一樣的訊號應該也行
PWM 輸出至 FET, 我的 MCU 用 5V 驅動, IO 電壓都是 5V
因此只要選 5V 時可以開口全開的 FET 即可動作

上圖是某顆 FET 的 datasheet 裡的圖, 4V 以後電流就超出圖表, 這種我的 MCU 就能用
FET 阻抗越低越好, 但這個夾爪有 20 多歐姆的阻抗, 所以應該低於 1 歐姆的 FET 就可以
而且輸出不是高速訊號, 這種 FET 很容易找

Demo:用 PWM 控制夾娃娃機夾爪

玩起來並不好玩!根本爛貨XD
如 demo 影片所示, 除非像模型的特殊形狀
不然盒子型的大概超過 80g 的就不要想夾起來了
實驗中用手去拉夾爪發現夾爪收合時, 中心鐵柱越上力量越強
可能和鐵柱在電磁鐵中的體積有關? 還是受鐵柱牽引夾爪的機構的力矩影響?
不過爪全開和全收時感覺雖有不同但不會差太多, 如影片所示
78g 的模型如果只是夾到頭也拉不起來, 一定要夾身體才行
夾頭就和夾紙盒一樣都是直的面, 限制應該是相同的, 連 78g 都抓不起
本來想自己搞台娃娃機, 但看到這種性能還是算了, 不好玩!
這機器做出來絕對不是玩, 而是被機器玩XD

這裡有群中二們的報告:夾娃娃機的科學
不是罵人, 是真的國中二年級XD
雖然該文沒有什麼技術細節, 但列舉出各種娃娃機的形式, 值得參考
裡面有一段:

一般來說,物品能浮是最重要的,因此除非待夾物處於極易出貨的槍位,
或是投 10 問路後發現爪力極強,即使沒有爪套也能浮的起來,否則沒有
爪套的娃娃機台通常可以直接放棄。


和我們的實驗結果相符, 不過若要無爪套抓起
若是紙盒類直的表面一定要夠止滑才行, 不然我認為不可能
而紙盒能搞的花樣可多了, 除了表面外還可放重物在裡面XD
反正只要有 100g 就可以保證夾不起, 最好是放球狀的
還會在盒中滾來滾去產生亂數重心效果, 這樣應該更難抓XD
該文中最有意思的是防甩片, 這是我完全沒想到的賤招XD
隨便找個機台仔細看一下還真有, 都是內甩的, 有夠陰險
如果想要做一台夾娃娃機, 根據該文的內容我們可以列舉出幾個主要方塊:

1. 本文的夾爪配 PWM
2. 天車和控制搖桿
3. 電眼 (出貨偵測)
4. 投幣器

天車部份就用 3D 列印的機構去搞即可, 一樣要 XYZ, 只是 Z 軸換牽引繩子, 這比較難做
需要許多滑輪, 還有減速機構提高扭力, 這裡應該用直流馬達+限位開關比較容易
Z 軸至少要能牽引 600~700g, 我這夾爪重量約 590g
電眼的話估計是用紅外線感測去做, 做成條狀陣列
投幣器買現成的, 拍賣上搜尋 "投幣器" 或 "錢道" 就有, 有兩種:比較式和學習式
比較式投幣器需要夾一個硬幣在投幣器上, 機器會比較投入的硬幣和夾在機器上的硬幣
比較原理不清楚, 我能想到的應該是線圈感應電流吧? 若相近就會吃下
然後有一隻接腳輸出脈衝信號, 應該就是一個拉高後拉低的信號, 有些機器可設脈衝長度
20ms, 40ms, 100ms ...等, 以 ms 為單位, 算蠻長的, 就算 8051 都能處理
學習式投幣器則是把硬幣的資料存起來, 設一個學習紐, 按下後投幣, 機器就感測後存下
通常用於需要支援多幣種的投幣器, 輸出有脈衝或 UART
脈衝模式就是支援幾個幣種就會有幾隻輸出腳, 偵測到的幣種對應的接腳就會有脈衝輸出
UART 模式就依照廠商定的傳輸協議丟出資料
脈衝接腳除了給娃娃機控制板外還會接到計數器, 拍賣搜尋 "電磁式計數器"
就像電錶一樣, 每吃一個硬幣就跳一下, 無法歸零, 應該是用來判斷有沒有人惡搞機器用的
這樣大概就是全部了, 剩下我能想到的大概就是一些選配的
像是 LED 照明, 炫砲 RGB 跑馬燈, 音效產生器, 看是要 MP3 還是 midi 混合
錢道可延長走 L 型防釣魚, 各組件加裝銅箔接地防 ESD 攻擊XD
這是個有趣的題目, 有難度, 但都屬於個人用戶即可克服的
只是夾爪實在太靠杯所以我就不想繼續做了, 有興趣的用戶可以試著完成它

2 則留言:

  1. 最近在研究娃娃機的爪子
    感謝您的文章給我靈感
    娃娃機爪子驅動電壓一般為48v
    12v一般俗稱摸摸爪
    實務上沒人這樣調 客人會逃跑
    要用耐電高壓的mosfet

    回覆刪除
    回覆
    1. 多謝情報!
      48V 這麼高啊, 這種程度耐壓的晶體我有很多, 但就是沒有變壓器
      手邊最多只到 12V, 等有零件採購時再順便購入

      刪除