2017年8月6日 星期日

當個快樂的物聯網自造者

物聯網是目前熱門科技之一,也是各行各業都會用到的智慧生活科技,但有些人一聽到物聯網,總感覺它是困難的,需要設計電路?需要寫程式?這點也是往往成為台灣創新的腳石,要創新需要懂得時代發展的潮流,不管是物聯網(IoT)、雲端服務(Cloud Service)、大數據(Big Data)、人工智慧(AI),都需要用到能夠掌握環境的資訊,來進行判斷,做出良好的決策及適當的反應,以無人車為例:車子本身要能判斷前方是否有障礙物,目的地在什麼地方?這些都需要經由感知器(Sensor)才能做到,這也就是為什麼物聯網很重要,因為物聯網是繼網際網路(Internet)或互聯網的下一代的網路基礎建設,網際網路/互聯網讓全世界所的電腦都能聯上網路,彼此之間可以交換資訊,造就現在數位炸的時代,未來當萬物都能聯網,每個物品都能彼此交換資訊,這又會是什麼樣的時代呢?
    學習物聯網要設計電路?需要寫程式?這個答案是「要」,也可以是「不要」,能夠設計電路和軟體這當然很好,但擁有物聯網專業知識,透過構思、設計、實作、操作的CDIO模式,把物聯網作品設計出來,這才是最重要的。這個時代是講究分工,設計電路和寫程式就留給電子、電機、資工領域的人,他們會設計出最穩定的硬體,最棒的軟體,而對於管理、工程、民生等非電子電機專業的人士,懂得掌握物聯網技術,經由瞭解使用者需求或市場需求,運用正規的設計方法,以及好用的實作工具,將產品快速地打造出,這就是物聯網自造者(IoT Makers)的精神。因此,不管您的專業是什麼?都要更認真地學習物聯網。

CDIO的網址:http://www.cdio.org/

2017年6月20日 星期二

[硬體Hack]無線滑鼠供電改裝

(以下技術部分僅供分享,若因為自行操作造成滑鼠毀損,則須自行負責,與作者無關)
嗨,大家好,我是盟鋼,今天的主角是這顆無線滑鼠
他還不錯用,只是有個問題一直困擾著我,就是那該死的乾電池,原因是乾電池沒辦法回收再利用,所以相對的就要一直花錢買新的去替換,時間久了,之前花的錢其實就能累積買充電型的,但也要買相對應的充電器才能充電,種種以上的問題對我是個很大的困擾

所以我就想到14500電池,或許能做為滑鼠的主要供電來源,會選用14500電池原因是因為他與3號電池體積與大小差不多,只是長度長了點,所以最後只需稍微修改外殼即可完美的安裝到原本的滑鼠上,以下是3號電池與14500電池比較

不過在開始修改前有個問題,因為3號電池的電壓是1.5V,與14500充電電池的電壓3.7V有很大的差距,所以貿然地將14500電池直接裝到滑鼠上,很有可能會直接毀損滑鼠。那這邊需要一個降壓模組,將3.7V降到穩定的1.5V,而這邊選用的降壓模組型號是MP1584,這片雖然輸入電壓的規格是4.5V to 28V,也就是說最低的輸入電壓是4.5V,但秉持著改造的精神測試了一下,發現其實3.7V也還是能將電壓往下降,所以就用了三用電表量測輸出的電壓為1.5V後,將調整電壓的可變電阻用熱熔膠黏起來,避免以後裝到滑鼠裡面後,因為跟其他零件碰撞,造成輸出電壓跑掉,進而燒毀滑鼠。以下是降壓模MP1584的樣子

好的,接下來就是拆解與查線拉,拆解這顆滑鼠不難,只要把一個螺絲鬆開就能輕鬆將電路板取出了,所以這邊就只傳拆下來的電路的照片,因為改造得太快,所以下圖是已經改造好的原圖

而這邊因為要將3.7V轉成1.5V,所以只需要動到+電的部分,-電則不動,圖片中的紅線則是原本滑鼠+電從電池的簧片供給到內部電路的路徑

那這邊我是拿美工刀把接近+電的銅箔給切斷(紅圈處),然後再將原先電池的簧片接點透過導線接到模組的IN+,而-電則是接一條線到模組的IN-或OUT-,因為這兩點其實是導通的,所以接哪邊都行。這邊最好拿三用電表量一下切斷的線是否還有導通,若無導通才可繼續接下來的步驟

轉到電路的正面做模組的安裝,因為要接到滑鼠的OUT+在正面的關係,所以就找了最接近的點將線焊接上去,而這點是原本用電池供電進去的第一個節點,所以才選擇將OUT+焊接在此

以下是將模組焊接好的樣子,那這邊因為滑鼠本身內部空間比較擠的關係,所以就不把模組給黏起來,讓模組可以自由的跑到剩餘的空間去,避免卡到一些零件

最後的最後,將14500電池安裝上去,那最一開始有說電池比較長的關係,所以我就那美工刀將紅圈處給割掉,讓14500電池能安裝得進去

完美,收工


2017年2月11日 星期六

Asus Tinker Board 使用心得

今年一月底見到網路上有關於華碩推出一塊外型與樹梅派一樣的ARM開發版,近期在FB上看到台灣可以賣到的資訊。原本個人對於一個系統廠要跨入開發版(Single Board Computer )市場並不看好,但思考了幾個小時後想想買一塊回來玩玩支持一下"國產"品牌也不錯。

2017年1月23日 星期一

[ESP8266] 利用ArduinoIDE開發ESP8266專案--開發環境設定

目前市售的ESP8266模組有很多種版本,如下圖
本篇是選用ESP01作為介紹
接下來分幾個部分
1.ESP8266 Core For Arduino安裝
2.連接ESP8266燒錄電路
3.燒錄Arduino程式到ESP8266


1.ESP8266 Core For Arduino安裝
這邊先到Arduino官網下載頁面




然後找舊版的ArduinoIDE[整合開發環境(Integrated Development Environment)]安裝

這裡選擇1.6.9版本

進入下載頁面後選Just Download
接下來安裝就不贅述,就一直下一步就好,若你有安裝其他版本的ArduinoIDE,安裝程式會先解除你目前的ArduinoIDE,才會繼續安裝1.6.9版本的ArduinoIDE

安裝好ArduinoIDE後,可能不會像畫面是中文的,不過沒關係,先選擇圖片中相對位置的選項進行更改,檔案->偏好設定

選擇後會出現這個視窗,若沒中文的同學請在Editor language選擇Chinese(Taiwan),然後再選擇下方的按鈕

跑出另一個視窗後輸入http://arduino.esp8266.com/stable/package_esp8266com_index.json,然後選擇OK,另一個視窗也選擇OK,再重開ArduinoIDE之後,就是中文的啦!

接下來到"工具->板子->板子管理員"中安裝ESP8266 Core

 選擇後後會出現下面這個視窗,選擇2.3.0版本安裝,然後他就會開始跑下載,下在完成後關閉按鈕才會跑出來,這時候才能關掉視窗

若有成功安裝,則板子內會出現許多新的選項

2.連接ESP8266燒錄電路
接下來會需要幾樣工具,麵包版或洞洞板USB轉TTL模組(建議用CH340系列或CP2102系列,較不會燒錄程式失敗)、5V轉3.3V降壓模組或降壓IC,以下是我用的USB轉TTL模組和ESP01版本的腳位圖(黑色板子跟藍色板子的ESP01腳位一樣)



幾個比較要注意的地方
1.ESP8266能接受的電壓3.3V
2.要接3.3V的有ESP8266的VCCCH_PD兩個部分
3.GPIO0要在接上電前接到GND,否則會沒辦法進入燒錄模式
電路如下圖
USB TTL <–> ESP-01
GND               GND
TX                   RX
RX                  TX
3.3V               VCC
 3.3V             CH_PD
GPIO0           GND

3.燒錄Arduino程式到ESP8266內
這裡要先確定你ESP8266的Flash Size,若你的ESP01是藍色的,就選第一個512K(64K SPIFFS),若你的ESP01是黑色的,就選第四個1M(512K SPIFFS)
再來就是Upload Speed,若CH340系列或CP2102系列的USB轉TTL模組,可以選擇921600,若不是CH340系列或CP2102系列的USB轉TTL模組或是上傳一直失敗的同學,請選擇115200,然後甚麼都先不用寫,直接選擇"上傳"按鈕(箭頭那個)
若程式有上傳成功,會出現像下圖的訊息(要在"偏好設定"中,勾選"顯示詳細輸出"的"編譯"和"上傳",才會有橘色字的訊息)

那本篇的教學先到這邊告個段落,下次會繼續寫關於ESP8266程式部分與電路部分,大概內容會以現在目前常見的Arduino模組,將電路與程式碼移植到ESP8266上

參考:
1.Arduino core for ESP8266 WiFi chip
https://github.com/esp8266/Arduino
2.燒錄程式電路圖
http://www.circuitsgallery.com/2016/01/getting-started-with-esp8266-esp-01.html
3.ESP8266模組
http://web-engineering.info/node/65
http://www.esp8266.com/wiki/doku.php?id=esp8266-module-family