我不知道你怎么樣,但沒有車的小編出門時除了公交,首選的出行方式就是Uber了。作為一個工作生活地點比較確定的人,家里、公司和購物中心是小編常打車的三個地方。而每次用Uber打車的時候,都需要拿出手機,選擇需要服務等等……要是能有什么一鍵叫車工具就好了! 當然,現在市面上還沒有這樣的工具并不代表我們不能擁有一個這樣的工具,但我們有一雙勤勞的雙手,那就自己做一個吧。 第一步:工具和組件 ·Arduino Mega 2560 ·1Sheeld ·按鈕 ·2個七段數碼管 ·LCD 2x16 ·USB ·PCB ·15個330Ω電阻 ·小型面包板 ·線材等 ·用作外殼的膠合板 第二步:Uber盒子 Uber盒子的設計當然和你本身選擇的其它材料有關,如果你使用的也是同樣的LCD(70x25 mm)、數碼管(12.5x19mm)和按鈕(直徑30mm),你可以下載Uberbox.ai文件作為盒子的切割標準。 第三步:測試LCD 當然,如果你確定你的LCD是完好的,這一步可以省略。 你可以按圖上的連接方式和代碼LCD_HelloWorld__.ino測試LCD以及相關的連接情況。 第四步:測試七段數碼管 測試數碼管,需要用到面包板。連接方式如下圖所示: 其中: ·a連接22,23腳 ·b連接24,25腳 ·c連接26,27腳 ·d連接 28,29腳 ·e連接30,31腳 ·f連接32,33腳 ·g連接 34,35腳 注意,每節數碼管和Arduino的連接之間都需要串接一個330Ω電阻。 測試代碼為_2Digit_Segments.ino. 第五步:制作PCB板 測試完成之后就需要制作能夠長時間使用的系統,這不用說了吧。 第六步:將按鈕和第12腳相連 注意這里的引腳選擇,對Arduino了解的用戶其實也可以根據自己的需要自己定義引腳,但同時也需要對Arduino的代碼進行修改。 第七步:接入Uber API 為了能夠使用Uber,我們需要通過Uber的API接入我們的應用,所以你需要現在Uber的開發者網站上獲取訪問令牌(access token)。這里我們可以用到Sandbox服務。 注:如果你使用的是火狐瀏覽器,推薦一個有趣的相關插件RESTClient,它能幫助你測試各種Web服務。 將以下內容添加到抬頭: Authorization Bearer OAUTH2-KEY Content-Type application/json 獲取產品ID https://sandbox-api.uber.com/v1/products {"start_latitude":"YOUR_LAT","start_longitude":"YOUR_LONG"} 命令執行的過程如下: 1. 發布 https://sandbox-api.uber.com/v1/requests {"start_latitude":"YOUR_LAT","start_longitude":"YOUR_LONG","product_id":"PRODUCT_ID"} 2. 推送 https://sandbox-api.uber.com/v1/sandbox/requests/REQUEST_ID_FROM_PREVIOUS_REQUEST _RESPONSE {"status": "accepted"} 3. 獲取 https://sandbox-api.uber.com/v1/requests/SAME_REQUEST_ID Arduino上需要配置的代碼如下: UberSandBox_Public.ino UberMain_Public.ino 第八步:最后總裝 將各個部件裝進盒子里面固定好。好了,可以在家叫車了。 |