本帖最後由 a26265788 於 2018-3-22 00:33 編輯 Delete |
超新手 發表於 2018-3-19 18:38 非常感謝大大的幫忙給了這麼多的建議!! 後來又去買了另一顆超音波交叉測試 發現換了HY SRF05之後就可以了 再次感謝!! |
聽起來比較像是電源問題, 因為那些 LED "應該"不是你控制的 比較簡單的測試方法就是, 不改任何程式的情形下 => 單獨拔掉接腳 7, 看看LED會不會保持之前亮度 如果還是暗的 => 單獨拔掉超音波電源, 看看LED會不會保持之前亮度 |
另外我剛剛看到超音波的手冊有提到 Note: 記得要串接1K歐姆電阻在超音波的SIG輸出腳到Propeller的腳位,因為,Propeller的I/O是3.3V的邏輯準位。 我目前是沒有接電阻,但是可以使用超音波 這樣會影響到循跡的運作嗎? |
本帖最後由 a26265788 於 2018-3-19 13:35 編輯 超新手 發表於 2018-3-19 13:17 阿抱歉忘了提到 我用的不是REDBOT 所以腳位有自行調整過 以下是馬達的腳位
Avoid是我自己再加進去的 我的測試是 先將車子放在黑線上(循跡狀態) 開機後會先8顆全亮,滅掉後 就開始看哪幾顆感測器感應到黑線 循跡板上的LED就會亮哪顆 並開始循跡動作 但是加入超音波變成一開機 亮完8顆滅掉後 就變成很微微的亮光而已 我剛試著用手抓著車子讓他循線 他會作動但是循跡變成卡卡的感覺會一直出去跑黑線 (有偵測到黑線但不像一開始的LED很亮,只有微亮) 然後感覺變成慢半拍 超音波用監控視窗看 發現也比單獨跑測試程式回傳的速度慢 感覺像是跑不動.. 電源的部分我是用電源供應器 9V給UNO的板子 |
1) avoid 程式是誰寫的 ? 我看RedBot的程式, 馬達該是接 2, 4, 5, 6, 7, 8 而馬達接腳 7, 又和 pingPin 衝到 但是超音波的測試程式, 又在 11 而 avoid 的馬達接腳, 為什麼又變成 10, 11, 12, 13 你的接腳到底是怎麼接的? 2) 馬達避障後, 有回到線上嗎? 如果沒回到線上, 它是不會走的 |
超新手 發表於 2018-3-19 12:27 還是一樣無法耶@@ 我試了
還有您說的
|
改成這樣試試 if ( inches <= 5 && inches > 0 ) { avoid(); state = READ_LINE;// 加這行 } |
超新手 發表於 2018-3-19 11:08 1.改50之後還是不行循跡 2.後來我把這一段改成
回傳的距離可以到10 inch 但還是只有超音波功能沒有循跡.. 3.這一段有修正為>0了
目前還是只有避障正常使用@@ |
本帖最後由 超新手 於 2018-3-19 11:14 編輯 1) 50 太短 50 / 74 / 2 根本不到 1 INCH 1 INCH 約為 74*2 =148 如果你要看 5 INCHES, 至少設個遠大於 5 INCHES 的值即可 2) 重點是, 如果改成 50, 就可以尋跡了嗎? 3) 對了, 你不可以設成 >=0 因為找不到時, 它的值就是 0, 改成 if ( inches <= 5 && inches > 0 ){ |
本帖最後由 a26265788 於 2018-3-19 11:02 編輯 超新手 發表於 2018-3-19 08:35 我用的是PARALLAX的PING超音波 他只有GND.VCC.SIG三根腳位 SIG腳位我改在digital 7 下面是他們提供的程式 我有單獨測試超音波程式有成功回傳距離回來
如果單獨跑上面程式 並把 duration = pulseIn(pingPin, HIGH); // Read echo pulse 這一段改成 並把 duration = pulseIn(pingPin, HIGH,50); // Read echo pulse 回傳值就都變成0 |
1) 你是用那一種超音波? 為什麼輸入和輸出是用同一根腳? 你有先寫程式先測過這個超音波, 或是這個寫法是 OK 的嗎? 2) 另外, 應該不是這個原因 但 pulseIn 如果沒收到回波, 它可是會卡住一陣子(秒級) 這時候你就沒辦法尋跡 可以使用 pulseIn(pin, value, timeout); 讓卡住時間不會那麼久 但判斷式就要改成 if ( inches <= 5 && inches > 0 ){ |
本帖最後由 a26265788 於 2018-3-20 01:19 編輯 超新手 發表於 2018-3-12 13:07 了解,小弟多寫幾個判斷之後有解決目前的問題了,不好意思現在才看到您的回覆 另外還有個問題想請教您 ,我想要把循跡+避障整合在自走車內(兩種功能同時運行), 一開始單用循跡都正常,但是加了超音波避障就變成不會循跡 可以請大大撥空幫我看一下程式碼是否哪邊寫錯嗎? 在此先感謝大大的幫忙,謝謝 以下為程式碼 |
如果是銳角, 車子在直走時, 就會看到兩條黑線 所以當車子看到兩條黑線, 就要特別處理 ..... |
小黑屋|手機版|Archiver|機器人論壇 from 2005.07
GMT+8, 2024-11-22 01:37 , Processed in 0.193390 second(s), 10 queries , Apc On.
Powered by Discuz! X3.2
© 2001-2013 Comsenz Inc.