2016年10月30日 星期日

2016 年第 42 周記事

昨天週六傍晚要回鄉下時, 先把我的電子零件箱搬到車上, 結果要上樓時一不小心把整串鑰匙掉在電梯口, 更糟的是我彎下腰去撿時沒撿著, 鑰匙被手一撥竟然掉進電梯門縫裡, 接著聽到喀一聲, 原以為電梯會被卡住, 但是沒有, 似乎掉到 B2 電梯底盤去了. 跑去管理室跟管理員講, 他說可以幫我打電話叫電梯公司技師來撿, 但因為是假日要收 200 元, 我想好吧, 只能這樣了. 雖然有備份鑰匙, 但是它沒有遙控, 打開車門會警鈴聲大作. 

等到 6 點 15 分技師才來撿鑰匙, 坐電梯時遇到兩個鄰居, 問我這周沒回鄉下嗎? 我說要啊! 但是因鑰匙掉進電梯門縫裡耽擱了. 不講還好, 這兩個鄰居說她們都有此經驗, 哈哈哈, 這樣我就比較沒那麼嘔了. 我打電話回鄉下跟爸說會晚一點到, 煮菜可能會太晚, 還是買麵回去吃好了. 沒想到小舅媽她們剛到我家, 正在幫我煮晚餐. 回到鄉下已 7 點 10 分, 舅媽剛走, 桌上已擺好四道菜, 真是太感謝了. 

今天中午要搭遊覽車去仁武吃喜酒, 是北巷的阿能叔娶媳婦. 為此我一早就去市集買菜, 以便早一點回來十點半要在十字路口的 7-11 等車. 可能因為昨晚鑰匙事件匆匆忙忙出發, 竟然忘記要帶一套較正式服裝, 只穿了短休閒褲與拖鞋就回鄉下了. 等到晚上要洗澡找衣服時才發現, 這下糟了, 因為我沒有擺甚麼好看的衣服在鄉下, 難道明天穿短休閒褲去吃喜酒嗎? 菁菁說沒關係啊, 我穿那套短休閒褲很好看, 但我直覺認為, 這很失禮吧! 真是小孩子就是小孩子. 

我樓上樓下到處找, 看看有沒有一件牛仔褲或西裝褲, 能應急就好. 但都是些幾年前的舊衣服, 而且尺寸都小好幾號了 (真慘). 最後找到一件看來是全新的西褲, 但褲腰太緊, 雖然好不容易拉鍊拉上去了, 鈕扣也扣上了, 但整個肚子就好像穿了束腹帶一樣, 這樣這頓大餐進得去嗎? 於是退一步想, 明日早晨去市集看看, 乾脆買條新的牛仔褲好了, 反正我很少在治裝. 但是市集街早市一眼望去, 不是賣童裝, 少女裝, 就是歐巴桑裝, 哪來牛仔褲哩! 

從市場回來準備著裝, 只好想想看怎麼處理這棘手問題, 不然叫菁菁跟爸兩個人去就好了, 但菁菁非要我一起去不可. 我只好找條皮帶穿上, 然後將褲頭鈕扣放開, 這樣腰就不會束得緊緊的; 再將 Polo 衫拉出來蓋住整個可能穿幫的地方, 哈哈哈, 這個難關就這樣蒙混過去了. 這件事給我的教訓是 : 凡事豫則立, 不豫則廢. 欲速則不達. 心裡一急, 好事也變壞事. 我就是急著回鄉下, 鑰匙才會掉進電梯門縫裡的, 也因為這樣就忘了帶衣服. 

另外, 這家餐廳菜煮得不錯, 是仁武的阿仁海鮮餐廳. 今天是男方女方結婚歸寧合併請客, 所以高達 60~70 桌. 但下午坐遊覽車回到鄉下已經四點了, 爸說吃頓飯花了快一整天哩! 

週日早上去市場買菜時順路去五金行問一下要作為太陽能板支架的角鐵價格, 之前買的一般萬用角鐵一支 12 尺 170 元 (下圖有藍色噴漆的), 而錏角鋼一支 10 尺 200 元, 雖然較貴一些, 但好處是跟白鐵一樣不會生鏽.



我覺得應該用錏角鋼為宜, 因為比較厚而且開的洞較少, 結構較扎實.


2016年10月29日 星期六

Arduino 測試 : PIR 紅外線移動偵測 (二)

去年七月底時測試過被動式紅外線 (PIR) 移動偵測模組, 此模組不會發出紅外線, 而是透過內建的生物紅外線偵測晶片來感測是否有人或動物經過其有效距離之內 (特別是水平方向的移動), 有的話就輸出 HIGH, 參考 :

# Arduino 測試 : PIR 紅外線移動偵測 (一)

這幾天因為要安裝 20W 太陽能板進行初步綠能實驗, 所以將 PIR 模組拿出來做進一步測試. 下面測試 1 目的是想透過序列埠監控視窗觀察 PIR 輸出的 HIGH 是持續一段時間, 或者像按鈕一樣會有彈跳現象?

測試 1 :

 setup() {
  Serial.begin(9600);
  pinMode(pirPin,INPUT);
  }

void loop() {
  int val=digitalRead(pirPin);  //read PIR output
  char mark='-';  //default print-out mark
  if (val==HIGH) {mark='*';} //change mark to '*' if detected
  Serial.print(mark);  //print the mark
  ++counter;  //increment counter
  if (counter >= 100) {
    Serial.println(); //new line if over 100 marks
    counter=0; //reset counter
    }
  }

此程式中我們開啟序列埠以便輸出每一個迴圈偵測到的 PIR 訊號, 如果偵測到 PIR 輸出 HIGH (有生物移動), 就往串列埠輸出 '*', 否則輸出 '-' 符號, 為了在序列埠監控視窗方便觀察, 我用了一個迴圈計數器控制每輸出 100 個符號便跳行.

序列埠監控視窗擷取訊息如下 :

----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
---------------------------------------------------------------*************************************
****************************************************************************************************
****************************************************************************************************
****************************************************************************************************
****************************************************************************************************
*************************************************************************---------------------------
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------

可見當 PIR 模組輸出 HIGH 時是連續一段時間, 不會有彈跳現象 (即 HIGH-LOW 短期間內交替變化), 這是好事, 表示我們不用去處理彈跳問題.

其次, 由於我使用自製的 Arduino+ESP8266 IOT 模組, 上面內建一個無源蜂鳴器 (接在 D9 腳上), 所以我想在偵測到生物移動時也發出告警聲, 這可參考之前寫的 Arduino 聲音測試 :

Arduino 的聲音測試 (一)

測試 2 : 

const byte pirPin=2;
byte counter=0;
const byte buzzerPin=9; //read PIR output

void loop() {
  int val=digitalRead(pirPin);
  char mark='-';  //default print-out mark
  if (val==HIGH) { //change mark to '*' if detected
    mark='*';
    tone(buzzerPin, 1000);
    }
  else {
    noTone(buzzerPin);
    }
  Serial.print(mark);  //print the mark
  ++counter;  //increment counter
  if (counter >= 100) {
    Serial.println(); //new line if over 100 marks
    counter=0; //reset counter
    }
  }

這裡當 PIR 輸出 HIGH 時使用 tone() 函數去發出 1KHz 的告警聲, 當停止移動輸出為 LOW 時用 noTone() 函數終止發聲. 測試結果確實會在偵測到時 ㄅㄧ ㄅㄧ 叫.

接下來在下面測試 3 我想知道當 PIR 偵測到移動時, 它輸出的 HIGH 狀態持續了多少時間? 在 "Arduino 完全實戰手冊 (博碩出版, 王冠勛譯)" 這本書的 6.3.2 節的程式 6-4 有偵測移動時間的範例, 但是它的寫法可讀性不高, 邏輯不清晰, 我看完大致了解作法後自行寫了下面的測試程式, 其中我省略了校正程序, 我覺得那不需要.

測試 3 :

const byte pirPin=2; //PIR ouput connected to Arduino D2
boolean waitForLow=false; //flag for calculate HIGH time
unsigned long timerStart; //time stamp of start moving

void setup() {
  pinMode(pirPin, INPUT);
  Serial.begin(9600);
  }

void loop() {
  if (digitalRead(pirPin) == HIGH) { //still moving  
    if (!waitForLow) { //LOW to HIGH change : start timer
      timerStart=millis(); //record time stamp of start moving
      waitForLow=true; //set status : waiting for motion stop  
      }
    }
  else { //pirPin==LOW :no moving
    if (waitForLow) { //HIGH to LOW change
      Serial.print("motion time=");
      Serial.print(millis()-timerStart); //calculate HIGH time
      Serial.println(" ms");
      waitForLow=false; //reset status    
      }
    }
  }

此程式利用 waitForLow 變數來記錄 PIR 輸出 HIGH, 正等待移動停止輸出 LOW 的狀態, 另外利用 timerStart 紀錄這個 LOW to HIGH 變化的時戳, 以便計算 HIGH 狀態的持續時間. 注意, 時戳必須用 unsigned long 才夠紀錄其值. 當偵測到 HIGH 時, 先看看 waitForLow 是否為假, 式的話表示這是 LOW to HIGH 變化, 就將此時的時戳記錄在 timerStart 裡. 若偵測到 LOW, 也是要看看 waitForLow 是否為真, 是的話表示抓到一個 HIGH to LOW 變化, 這時用 millis() 減掉 startTimer 就可以得到 HIGH 狀態的持續時間了, 同時也要將 waitForLow 重置為 false.

序列埠監控視窗擷取訊息如下 :

motion time=543 ms
motion time=673 ms
motion time=544 ms
motion time=542 ms
motion time=541 ms
motion time=3015 ms
motion time=1865 ms
motion time=2787 ms

可見每次偵測到移動輸出 HIGH 時間都不一定, 但大約都在 0.5 秒以上. 這個 HIGH 持續時間可以用 PIR 模組上的一個可變電阻調整, 如下圖所示 :


但這很難精確地調整到我們需要的延遲秒數, 要精確的話必須用軟體的方式來解決, 如下列範例使用 delay() 函數來控制 :

測試 4 :

const byte pirPin=2; //PIR ouput connected to Arduino D2
const byte ledPin=13;
int highDelay=10000; //high delay time (ms)

void setup() {
  pinMode(pirPin, INPUT);
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
  }

void loop() {
  if (digitalRead(pirPin) == HIGH) { //still moving
    digitalWrite(ledPin, HIGH);  //set output
    delay(highDelay); //lasting HIGH output
    digitalWrite(ledPin, LOW); //HIGH timeout
    }
  }

這裡的 highDelay 變數就是用來設定 HIGH 延遲的, 當 PIR 偵測到移動輸出 HIGH 時, 就將 D13 LED 點亮, 經過 highDelay 毫秒後再熄滅. 這個功能也可以用外部硬體中斷來完成, 但是 PIR 輸出只能接到 D2 或 D3 兩個中斷腳位, 因為 UNO/NANO/Pro Mini 這三種以 ATMEGA328P 為 MPU 的板子都只有兩個外部硬體中斷, 關於中斷參考 :

# Arduino 按鈕開關測試 (二) : 硬體中斷法 (Interrupt)

下列範例仍然將 PIR 輸出接到 D2 腳位 (中斷 0), 使用 PIR 輸出的上升緣來觸發中斷 :

測試 5 :

const byte pirPin=2; //PIR ouput connected to Arduino D2
const byte ledPin=13;
int highDelay=10000; //high delay time (ms)
volatile boolean state=LOW; //initial value of output

void setup() {
  pinMode(pirPin, INPUT);
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
  attachInterrupt(0, int0, RISING); //assign handler int0()
  }

void loop() {
  if (state == HIGH) {
    digitalWrite(ledPin, HIGH); //set HIGH
    delay(highDelay); //lasting HIGH output
    digitalWrite(ledPin, LOW); //HIGH timeout
    state=LOW; //reset state
    }
  }

void int0() { //interrupt handler
  state=HIGH; //set state
  }

此例中當 PIR 偵測到移動時會從 LOW 變 HIGH, 此上升緣觸發中斷 0 去執行 int0() 函數, 將狀態變數 state 改為 HIGH; 而在 loop() 函數中判斷若 state 為 HIGH 就點亮 D13 LED, 經過 highDelay 毫秒後再熄滅, 同時將 state 重設為 LOW 狀態. 實際測試可知效果與上面測試 4 是一樣的.

不過上面不管是使用哪一種方式, 當設定的 HIGH 延遲時間結束時, 即使物體還在移動, 燈仍然會先熄滅, 然後再次感測到移動而重新點亮, 這樣對於感應照明控制之類的應用而言頗不自然, 因為通常我們期望的是, 即使我們設定了燈亮的持續時間, 但如果物體還在移動, 燈應該持續點亮, 直到物體停止一段時間確實不再移動後再熄滅.

這該怎麼做呢? 我修改了上面測試 5 的程式, 加入了一個 triggerCount 變數來累計中斷觸發的次數, 只要 PIR 一偵測到物體移動觸發中斷, 就將 state 設為 HIGH 以便點亮 D13 LED, 並將 triggerCount 增量 (除非碰頂到達 triggerLimit, 這是為了避免一直增量下去使得燈熄滅時間過度延長). 而在 loop() 中的每次迴圈中則依據 state 狀態來控制 LED 明滅, 當 HIGH 延遲時間結束時就將 triggerCount 減量, 當其到達 0 時表示一段時間內都沒有移動觸發, 就將 LED 熄滅.

測試 6 :

const byte pirPin=2; //PIR ouput connected to Arduino D2
const byte ledPin=13;
int highDelay=10000; //high delay time (ms)
volatile boolean state=LOW; //initial value of output
int triggerCount=0; //interrupt counter
int triggerLimit=5; //cieling of trigger Counter

void setup() {
  pinMode(pirPin, INPUT);
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
  attachInterrupt(0, int0, RISING); //assign int0
  }

void loop() {
  Serial.println(triggerCount);
  if (state == HIGH) {
    digitalWrite(ledPin, HIGH); //set HIGH
    delay(highDelay); //lasting HIGH output
    --triggerCount;  //decrement counter
    if (triggerCount <= 0) {  //motion stop
      digitalWrite(ledPin, LOW); //HIGH timeout    
      state=LOW; //reset state
      }
    }
  }

void int0() { //interrupt handler
  state=HIGH; //set state  
  if (triggerCount <= triggerLimit) { 
    ++triggerCount;  //increment counter if not reaching uplimit
    }  
  }

實際測試發現若持續移動, triggerCount 會一直保持在 5 附近, 若停止移動後, triggerCount 每 10 秒會遞減, 直到 0 時就會將 LED 熄滅. 因此就上面的程式設定值而言, 只要連續 50 秒 (10*5) 都沒有偵測到移動, 燈就會熄滅. 序列埠監控視窗擷取訊息如下 :

0
0
0
2
2
1
2
3
4
5
5
4
3
2
2
1
1
0
0
0










養貓條例

前幾天菁菁回家跟我說, 她們理化老師養的貓生了一窩小貓, 問她們有沒有人要養, 哇咧又來了, 又在發貓狗瘋了, 她真的是寵物控, 已經跟我盧好久要養狗狗, 養貓, 甚至上市集買菜時看到路邊有人賣小雞, 也吵著要養小雞. 但我覺得養寵物很麻煩, 所以一直不答應.

昨晚回家看到書桌上有一張用黑筆寫的字條, 標題 "養貓條例" :

  1. 清貓砂
  2. 洗貓窩
  3. 五周一次剪指甲
  4. 每天ㄕㄨ毛
  5. 不可進房間
  6. 不可ㄧㄣˇ 響功課
  7. 早晚餵食
  8. 陪牠玩
原來水某已答應她養貓, 但要求她寫一張養貓規定. 我是很喜歡貓咪與狗狗, 但無法接受讓貓狗進被窩或房間到處跑. 小朋友養寵物通常是一頭熱, 最後都是父母在養, 小學三年級的時候同事問說要不要養虎皮鸚鵡, 菁菁說要, 結果最後還不都是我在幫牠清大便.


2016年10月28日 星期五

購買充電控制器與 7AH 電池

為了本周末要安裝 20W 太陽能板, 昨晚去長明街全電行 (近大林電子) 買了一顆 7AH 的台製湯淺蓄電池, 蓄電量大約 80W :

# ☆全電行電池專賣☆YUASA NP7-12 12V7AH (8顆免運費2016/5月製造) UPS 不斷電 $380


另外向露天賣家 psa0958 購買太陽能板用充電控制器 2 個 :

# 太陽能板專用充電控制器 12V 24V通用 10A(299元) 20A(399元) 30A(499元) 免運費 $299


第二個優惠折扣 50 元, 故總價 299+249=548 元, 免運費

20161103 補充 :

充控上週末到貨, 本周帶來高雄測試, 其說明書如下 :






此款充控會自動辨別蓄電池是 12V 還是 24V, 且具有光控功能, 比我之前買的那個還要好, 而價格卻差不多. 從技術參數可知, 其輸入耐壓最高 41V當電池低於 11.2 伏時會進入低電壓保護截斷負載端輸出; 高於 12.6 伏才會恢復放電, 待機電流小於 10 mA.



2016年10月27日 星期四

購買小蟻智慧攝影機

今天同事在問我買路由器問題, 我建議他買小米路由器, 因為我覺得它的設定很方便, 用手機兩個步驟就搞定了. 結果他去小米台灣官網都沒找到, 我幫他打客服問才知道路由器已暫時沒賣 (據說有新款要出), 我順便抱怨小蟻攝影機都買不到, 結果客服說現在有貨啊! 我找了一下還真的有哩, 趕緊就下單買一台, 定價 999 元, 滿 800 免運費.

今年六月時有考慮在露天購買, 我覺得還是在官網買為宜 :

# 小蟻智慧攝影機
# 小蟻攝影機功能
http://www.mi.com/tw/yiwebcam/

20161029 補充 :

貨第三天就寄到了, 帶回鄉下測試, 發現不僅影像清晰, 功能更遠勝我目前已有的三支 Wifi 監視器. 參考 :

[使用教學] 【必看】小蟻智慧攝影機設定/連接/功能 Q&A(12/21 更新)

好站 : 錵鑶居家料理小教室

今天在臉書看到好友分享了 "蘋果西打燉肉" 影片, 做法非常簡單, 迫不急待等周末到來試試看. 這位大廚聖凱師傅說話詼諧, 廚藝看來很精湛, 他在臉書與 Youtube 分享了很多食譜與做菜訣竅, 參考 :

錵鑶居家料理小教室 (臉書)
# 教你在家當大廚 (Youtube)

下面這道就是我現在最想做的一道菜 :

# 蘋果西打燉肉


其次是這道 :

地瓜葉皮蛋


看完後突然想起冰箱還剩下一小包空心菜與一顆皮蛋, 不如就用空心菜取代地瓜葉馬上來做這道菜當午餐吧! 先將空心菜洗淨切些蒜末, 皮蛋剝好切半備用, 等韭菜炒蛋煎好後立即下鍋, 先將蒜末炒香再將空心菜放進去炒, 加一些水炒軟後將皮蛋放下去壓扁碾碎, 等湯汁收得差不多就可以起鍋了 :




嗯, 加了皮蛋調味的空心菜別有一番風味哩! 真的.

PS : 錵鑶日本料理位於永和中正路上, 智光商職對面.


到訪人數一百萬

今天要下午才進辦公室, 早上是自由時光, 就去母校高應大還書同時領預約的兩本樹莓派書籍, 哪知當班的學妹竟然找不到, 問我是否可等到中午老師來了之後再問問看. 這讓我非常為難, 等嘛浪費時間我還有事要做, 不等嘛還要再跑一趟更浪費時間. 無奈只好請她幫我追一下這兩本書. 這已經是第二次了, 顯然母校的圖書管理真的有問題, 我在市圖從未遇到過這樣的事.
  1. Raspberry Pi實例應用集 / 河野悦昌原著; 許郁文譯 
  2. Raspberry Pi 機器人自造專案 : 從零開始,花小錢打造屬於您自己的機器人
    理查.格理梅特(Richard Grimmett)著 ; 曾吉弘譯 
回到家準備寫程式時, 赫然發現 Blogger 到訪人數已經來到 999986, 重新整理網頁發現數字剛好顯示一百萬, 真是太巧了! 如果我在圖書館多盧一下就抓不到哩! 其實我早上去還書前就注意到今天會破百萬了, 更新完之前的一篇硬體中斷測試紀錄時剛好看的數字來到對稱的 999111, 於是趕緊抓圖下來, 真實無可救藥的數字控, 哈哈哈.

2016-10-27 08:09

而一百萬的是這張 :

2016-10-27 10:45


2016-10-27 10:45

沒想到我這個小小 Blogger 還真有人在看, 大部分是瀏覽我的 Arduino, Java 等學習筆記來的. 不時有網友留言感謝我整理得好, 其實以前讀書時我就是筆記整理達人, 沒辦法, 頭腦沒人家聰明, 只好靠努力與細心. 老實說我記錄下來不久就會忘記, 這也是我寫筆記的初衷, 因為讀過相關書籍之後會發現腦中資訊很雜亂, 道理是懂了, 但是如果不經過一翻爬梳整理知識的邏輯脈絡, 再用自己的話記下來, 其實沒有真懂, 不但很快就會忘記, 而且當你重新審視學過的東西時, 會發現全部回歸渾沌狀態, 必須全部重來.

當然, 就算有整理筆記也是不可能記得牢, 一段時日後照樣忘光, 像前陣子就有網友留言問我 Java Swing 的問題, 哇咧, 我已經有兩年沒碰 Java 了, 還真的給它忘光光. 但溫習自己寫的筆記會比重新建構知識體系要來得快, 而且直接進入重點不須繞彎路. 所以即使很花時間, 我還是願意紀錄下每一個我學過的東西, 或者生活中的事件. Blogger 對我而言其實就是一個 Event Logger 而已, 有時候往回看, 還真的偶而會覺得 : 這樣啊, 我都忘記有這回事了!


2016年10月26日 星期三

好書 : 兩本 Arduino 圖形化程式設計書

跟母校高應大借的兩本 Arduino 書他預約書到了, 但額度已滿不得不還, 所以囫圇吞棗前後翻一遍就準備拿去還, 在此做個紀錄.

# S4A 與互動媒體技術物聯網 (碁峰, 謝作如)

Source : 博客來

# 用 mBlock 玩 Arduino (碁峰, 林信良)



這兩本書都是用圖形化設計軟體來設計 Arduino 程式, 這對中小學生或非科班學習者是福音, 但對我而言是多此一舉. 特別是並非每一個 Arduino 函式都被作成軟體積木, 所以有些功能還是不得不使用 Arduino IDE.

雖然我不會使用 mBlock 或 S4A 來做 Arduino 專案, 但這兩本書還是有值得學習之處. 例如 S4A 這本書裡每個章節都有 "Tips" 註解, 有一些對我而言是新知識, 例如 5.6.1 談到無線遙控時, 提到超外插比超再生技術要穩定, 靈敏度較高, 發射機使用 SC2262, 接收機使用 SC2272 晶片等等. 6.1 節提到中國兩大物聯網平台 Yeelink 與樂聯網. 6.5 節介紹了一個免費的綠色 Web 伺服器 NetBox. 第七章則介紹了 Processing 軟體與 Arduino 的互動搭配.

而 mBlock 這本在 5.3 節介紹移位暫存器 74HC595 驅動七段顯示器的方法. 6.2 節介紹用來推動馬達的達靈頓對 IC ULN2003. 6.4 節介紹步進馬達控制. 以上就是這兩本書對我而言有用的部分.


2016年10月25日 星期二

外星基地部落格的綠能實踐

今早騎自行車回來後, 想說來寫風力發電機的監控程式, 但上網時卻無意中找到 "外星基地" 這個部落格, 作者是綠能同好, 仔細看過其所寫的綠能實作文章, 讓我收穫甚豐, 對於我建立家庭備用電源的計畫極有幫助, 故摘要整理如下 :

在 "獨立型逆變供電,冰箱啟動電流過大跳機問題,解決參考" 這篇談到冰箱啟動電流過大導致保險絲燒毀問題的解決辦法, 就是加裝一個市電切換的繼電器, 我查詢露天有賣這種切換器 :

# 太陽能板 獨立發電逆變市電自動切換續電器 $500

在 "綠色電力無限公司" 這篇作者秀出其 DIY 電力實際配置圖, 他使用瓦時計來計算綠能產出多少度電, 這讓我對傳統瓦時計有了點興趣, 下面是我在露天找到的一些二手瓦時計 :

# 大同瓦時計I-18NT(110V單相二線式 ) $249
# 阿榮通訊瓦時計電表 (高市苓雅區光華一路142號) $400
# 大同電表 E-31 單相二線式 110/220電子式瓦時計器 $500
# 【煌達汽車】大同電錶 機械式電錶 電力計/瓦時計 220V $650
# ( 最後一賣1200,請勿議價 ) 全新大同電表瓦時計單相三線式D-68T 110/220V 10A(30A) $1000

在 "新一期電費帳單" 這篇, 作者秀出裝了太陽能板後電費單節費情形, 確實有達到省電功效. 底下網友有提到併網型當家裡耗電較少時, 綠電會倒灌回台電, 導致電表逆轉, 讀數卻增加現象, 而獨立型就可避免此問題, 但獨立型缺點就是需額外配線, 且需要一個切換器在電池不夠輸出時自動切換至市電, 否則要常插拔很麻煩. 底下留言有值得參考之處 :

"獨立型確實實用多了, 所以在較便宜的車用一般鉛酸電瓶就得考慮如何增加其夀命了! 已有台南同好進行電瓶整修測試了, 使用電瓶修復水看起來也便宜很多."

"逆變器之選擇,要選純正弦波的逆變器,因模擬正弦波有的家電並不適合,比如電扇等. 逆變器的使用是獨立於台電線路之外,因此必須另外牽線建立獨立的供電系統,而且還須建置電瓶儲電.綠能若要直接併入台電系統,必須裝設一台併網機,(逆變器與併網機是不一樣的機器)以併網方式的建置較簡單,也可不用建置電瓶(風力發電除外)"

# 鉛蓄電池復活術?
太有用了!不花錢修復電動車電池的秘訣
報廢電池加水修復
新舊五金鐵材 (H型鋼、C型鋼 : 高雄市鳥松區神農路 阿章0928-767-215)

在 "室內綠能配電盤DIY" 這篇作者秀出太陽能配電盤的配置情形. 底下留言區提到用串聯熱敏電阻避免逆變器因冰箱大啟動電流發生跳電情形.

"綠能/市電切換繼電器" 這篇作者介紹利用繼電器 DIY 獨立型綠電/市電切換器, 附圖顯示電池經逆變器將 24V 直流轉為 110 交流電後經瓦時計, 串接一個無熔絲開關, 再接一個插座, 插座上先插一個功率計再接負載. 這個交流繼電器應該是用逆變器輸出驅動的, 當逆變器有電時, 使繼電器的常開接點閉合, 讓逆變器輸出到負載, 常閉接點的市電跳開; 沒電時常開接點回復使逆變器跳開, 而市電則復閉.

"利用電磁接觸器控制綠能、台電自動切換" 這篇提到使用一個 4 對常開 2 對常閉的電磁接觸器在逆變器無輸出時自動將負載切換到市電, 而且還手繪了一張電磁接觸器的動作原理圖 (最上層的接點為 4 對常開接點,第二層為 2 對常閉接點, 最下層則為線圈端).

日本 富士 SZ-A11 電磁接觸器 補助接點 1A1B $65 (鹽埕區公園二路141-1號 (07)5321898)
# 士林AP-22 輔助接點 電磁接觸器 $70

以下是我對逆變器的市調 :

# 高品質 藍科 300W 車載 逆變器 汽車電源轉換器 12V轉110V 充電器 100%足功率 帶USB 5V輸出 (外置保險絲) $720
# ~綜合百貨~@大NG逆變器600W汽車電源轉換器 汽車DC12V轉AC110V 家用電源 仿正弦波NG出清 $750
# 電源轉器純正弦波.純正旋波500W1000W 1200W 逆變器 12v.轉110v 可用太陽能板 露營車 農場農舍 (250W 太陽能板需要搭配四顆 100AH 電瓶) $1550
# 純正弦波 500 W 逆變器 DC12 V轉AC 110 V太陽能 風力發電 露營車 工地交流電專用 $2000


光復節小確幸

昨天上班時同事提到今天放假不用來上班, 我驚呼還好你們提醒, 不然我真的會跑來上班. 不過今天早上起來還是有點不放心, 想要打電話到辦公室去看看有沒有人接, 搞不好這幫人呼攏我也說不定, 但是 ... 算了, 如果是這樣的話, 九點沒進辦公室就會接到詢問電話, 幹嘛疑神疑鬼的, 就放心放假啦.

早上陪菁菁到路口回來後就騎我那台小摺 "小白" 沿著河堤自行車道騎到愛河之心折返, 再騎到蓮潭會館旁的原生植物園, 來回騎了 11 公里. 出發前想到上回其阿公店水庫時, 阿龍表弟推薦的 Road Bike 軟體, 開啟 GPS 後會用 Google 地圖記錄所經過的旅程, 花費的時間, 以及消耗的卡洛里, 很好用滴 :




本來騎到博愛路, 崇德路時就想折返, 但似乎離原生植物園不遠, 所以就繼續騎, 要不然應該只有 10 公里左右. 我覺得崇德路到植物園這一段沒有自行車道, 就是一般道路, 要避開大小車輛, 騎起來不舒服. 以後就是到博愛路折返即可.

這幾天想去買個自行車用的手機架與水壺架裝在小白上面, 現在開始喜歡上騎自行車了, 打算冬天來騎南迴段到台東 (跟阿龍表弟).


2016年10月24日 星期一

語音辨識合成 IC 與模組

我在 "Arduino  實作入門與應用 (松崗, 陳明熒)" 這本書的第 14 章 "Arduino 說中文" 讀到中文語音合成晶片 SD178A 的介紹 :

Source : UDN

SD178A 為國內翔音科技設計製造, 可以使用 BIG5 碼做 TTS (Text To Speech) 語音合成, 沒辦法直接輸入中文就發音, 而是需先以內碼查詢軟體將其轉成 BIG5 內碼後才能使用, 參考 :

# 翔音科技 : SD178A 中文文字轉語音IC
# SD178A_B3 中文字轉語音 模擬板
多功能智慧型語音撲滿技術架構

不過 SD178A 其合成之語音未做韻律處理, 發出的語音聽起來感覺較生硬, 機器感很重, 適合用於短字詞合成, Youtube 有相關影片:


我在露天對語音辨識與合成晶片做了一番調查, 發覺現在這類模組都還蠻貴的, 起碼都要 400 元以上. 大致來說, 非特定語者語音辨識晶片以 LD3320 系列較為廣用; 語音合成晶片以 SX6288/SYN6288 晶片為主, 而語音播放模組 (SD 卡) 則以 WTV020SD 晶片較受歡迎.

露天找到的現成模組如下 :

一. TTS 語音合成 :

《德源科技》TTS中文語音合成模塊SX6288A語音模塊語音合成開發板 $350
《德源科技》TTS中文語音合成SX6288A語音播報模塊語音模塊語音開發板 $410
# 思修電子TTS中文語音合成SX6288A語音播報模塊語音模塊語音開發板 $RMB40
B20 TTS串口語音合成模組SYN6288/ 51單片機C源碼 $473
# 【秋葉原電腦周邊-旗艦店】㊣ SYN6288 TTS語音模組 語音合成模組 文本轉聲音模組 $500
《德源科技》SYN6288 TTS語音模塊 語音合成模塊 文本轉聲音模塊
# SYN6288 TTS語音模組 語音合成模組 文本轉聲音模組 W70[276609-045] $676
# DFRobot Speech Synthesizer Bee語音合成模組Arduino xbee相容 $890
SYN6288-A語音合成模組使用手冊.pdf
# $米樂優活館$通泰 TONTEX TT5665 語音合成 IC $20
# 《德源科技》中英文語音合成 TTS 語音模塊 方言 TTS合成 串口語音 $1130

二. 語音辨識 :

# 【秋葉原電腦周邊-旗艦店】㊣ LD3320非特定人語音識別模組 / ASR 帶咪頭 帶有源晶振 LD3320語音識別模組 $550
# 熱賣 語音辨識模組 LD3320 一體化帶單片機、IO 技術支援 (LDV7) $890
# 【秋葉原電腦周邊-旗艦店】㊣ 語音辨識 模組 LD3320晶片 非特定語音 語音播放 提供STC系列參考程式 $980
# 語音識別模塊 LD3320 壹體化帶單片機、IO 技術支持(C4B4) $700
# 【秋葉原電腦周邊-旗艦店】 LD3320 SPI 語音識別模組 非特定人聲 語音控制 語音模組 開發板 $720
# 微雪 LD3320 語音模組 語音識別模組 非特定人聲 語音控制 直排針 $680
# 【秋葉原電腦】LD3320 ASR語音模組 非特定語音識別 機器人語音控制 送晶振咪頭 / LD332X非特定人語音識別模組 $580
# 【秋葉原電腦周邊-旗艦店】㊣ LD3320非特定人語音識別模組 / ASR 帶咪頭 帶有源晶振 LD3320語音識別模組 $550

三. SD 卡語音模組 : 

CJMCU Audio WTV020SD 語音模組 SD卡語音模組 遊戲機語音模組 W10 ★ 265080- 039 ★ $225
WTV020-SD語音模組 SD卡語音模組 遊戲機語音模組 MP3模組 ★264108-039 ★ $195
WT5001M02-28P 高音質 wav MP3語音模組 SD卡模組 U盤語音模組 支援TF / SPI MP3播放模組 $290
MP3模組 / BY8301-16P MP3 WAV串口模組 自由下載 MP3多路語音模組+內置3W功放 $290
►455◄WTV020-SD語音模組 SD卡語音模組 遊戲機語音模組 XD-10 $180
Finite State Machine with Arduino Lab 3.pdf
https://www.maketecheasier.com/arduino-enthusiast-ebook-bundle/

參考資料 :

# LD3320 Datasheet
# Arduino系列教程十:语音识别模块 LD3320
# arduino uno\mega 2560与ld3320语音识别模块的匹配
Experiment with LD3320 using teensy 3
# Speech Recognition Module (Read 9904 times)
# SPEECH RECOGNITION ON AN ARDUINO
# µSpeech Speech recognition toolkit for the arduino
LD3320 Chinese Speech Recognition and MP3 Player Module

2017-10-18 補充 :

今天在露天看到這款 WT588D-U 模組 :

【先進科技】㊣ WT588D-U語音模組 隨意更換聲音 16M/32M $290

可以透過 Arduino 控制語音播放.

2016 年第 41 周記事

過去這一周感覺很空白, 好像沒完成甚麼, 這會讓我感到些恐慌, 因為我就是閒不下來的射手座啊! 不過倒是讀了一些書, 因為跟圖書館借的書要清一清啦. 還有, 人生不能也不是一直前進, 有時候也要停下來想一想 : 離目標愈來越近, 還是愈來愈遠? 每個人都有夢想, 但能實現的其實並不多, 把不切實際的幻想放棄吧!

過去這一周本來要先寫 20W 小型太陽能系統的 Arduino 控制程式, 但為了把物聯網的書看完, 到周末還是沒時間動手. 週六 10/22 回到鄉下, 晚飯後先把之前拆下來放在客廳已經很久的風力發電機拿來擦拭乾淨, 並把尾翼拆掉, 我決定放棄可轉向設計 (上週已拆除底部轉向軸承), 改回固定式設計, 反正鄉下家固定就是下午吹西風或西南風, 只要固定在此兩方向之間, 整個下午通常都能轉個不停.

週日 10/23 中午吃完飯後放棄午睡, 將有點生鏽的發電機軸承磨光上油, 找了四根螺旋螺絲將發電機基座鎖在角鐵支架上, 去年初次安裝時有兩個支架, 後來為了改成可轉向設計, 就拆掉一組支架. 鎖緊後正好猛吹西南風, 量得最高開路電壓約 60 伏特.



將原本太陽能用的充電控制器與電池拿來給風力發電機用, 接上負載後電壓大約固定在 15 伏特左右, 量測充電電流大約 40mA.


安裝完風力發電機後已下午四點, 要安裝太陽能板似乎有點晚, 但還是先在車庫把角鐵支架組裝好, 下周再用地虎鎖在廁所上面, 組好後我先拿上去看看鎖哪裡比較好 :


呵呵, 總算有動手做點東西了. 本周要再買一顆電池與一個充電控制器, 然後寫好 Arduino 程式來紀錄發電情形, 同時控制夜間照明. 太陽能部分主要是監看能板輸出電壓, 其開路電壓最高 18V, 要轉換成 5V 可用 100K 與 260K 電阻分壓, 計算如下 :

R2/(R1+R2)*18=5

(R1+R2)/R2=18/5=3.6

R1/R2=[(最高電壓)/5]-1=2.6

而風力發電機開路電壓最高可達 80V, 因此 R1/R2=80/5-1=15, 可用 10K 與 150K 分壓.

充電控制器有兩家 :

# 太陽能板專用充電控制器 12V 24V通用 10A(299元) 20A(399元) 30A(499元) 免運費 $299
# 太陽能板 充電 控制器 12V 10A 太陽能控制 顯示電池電量 省電節能 太陽能 風力發電 水力發電 $259

第一家免運的第二顆起折價 50 元 :

買一個是 299
買兩個是 299+249=548 (平均 274 元)
買三個是 299+249+249=797  (平均 266 元)
買四個是 299+249+249+249=1046  (平均 261 元)
至於電池, 因之前交易的三多電池已經無貨品 (結束營業?) 所以考慮長明街這家全電行 :

# ☆全電行電池專賣☆YUASA NP7-12 12V7AH (8顆免運費2016/5月製造) UPS 不斷電 $380


2016年10月22日 星期六

整理電子零件箱

昨晚 12 點就睡了, 早上六點半醒來, 我的自然醒就是睡足六個半鐘頭, 只有週六才能這樣享受. 自從買了小米手環 2 之後, 對每天走的步數就會很在意, 為了早上有精神去跑步, 我設 11:00 提醒睡覺的鬧鐘, 時間到時手環就會震動提醒. 我上班日一共設了十個鬧鐘, 包括早上 10:30 下午 15:30 各 15 分鐘休息時間要做甩手功, 以及中午晚上打電話回鄉下等等. 大部分鬧鐘我都有遵行, 唯獨這個睡覺鬧鐘, 我按掉之後還是要拖到過了 12 點才關掉電腦, 真正入睡近 00:30 實在有點晚.

既然睡飽飽, 午覺也睡不著, 就想來做 NOKIA 5110 液晶顯示器測試. 但大略翻一遍零件盒沒找到, 發覺我的零件盒該整理了. 就這樣一整個白天都花在整理我的電子零件箱. 過去兩年為了玩 Arduino 與樹莓派, 陸陸續續做了幾次電子零件與模組採購, 買來就放在原寄件紙盒裡, 要用到時才去找. 結果每次找都要整個箱子翻一遍很花時間, 而且紙盒很佔空間, 放在大提袋袋還鄉下時很不方便, 所以今天把四個紙盒中的模組零件全部倒出來, 放到塑膠整理箱裡, 這樣找零件好找, 大提袋也不會塞爆.

大整理之後終於找到 NOKIA 5110 LCD 顯示幕了, 使用前須焊接針腳, 既然烙鐵熱了, 乾脆連上回電線斷裂的達新牌吹風機也焊接回去吧! 結果發現焊電子零件的焊槍要焊多芯電線似乎很難焊, 不知道是否功率不夠?


2016年10月21日 星期五

好書 : 物聯網如何改變世界

這本書是我從母校高應大圖書館借來的, 譯自 Michael Miller 的 "The Internet of Things", 譯者胡為君譯筆流暢, 我從來沒讀過翻譯得這麼棒的科普書籍, 真的. 雖然原著內容寫得好, 但若無信達雅的翻譯, 原書的光采也會變得黯淡.

物聯網如何改變世界

Source:誠品

這本書介紹物聯網的概念, 技術, 架構, 設備以及目前與未來的各種應用, 可說兼具深度與廣度, 是了解物聯網不可不讀的一本好書. 讀書筆記摘要如下 :

CH1 : 智慧連線-歡迎光臨物聯網
  1. 網際網路雖然是機器組成的網路, 但也是人的網路, 因為使用的主體是人, 是 "人聯網", 所連結的設備 (伺服主機與終端) 主要是供人使用 (分享資訊, 收發信件, 下載檔案等). 物聯網則不同, 物聯網的目的並非建立人與人的網路, 而是用來連接物與物的網路, 讓各種設備互相通訊以取得資料, 目的是讓互連的設備提供更自動化與智慧化的服務, 將人為介入降至最少. 
  2. 從技術上而言, 物聯網由可辨識身分的嵌入式計算設備所連線而成, 目前主要是透過網際網路互連, 因此物聯網與網際網路有重疊, 但物聯網不一定要透過網際網路互連, 也可能透過其他的網路技術, 例如 Sigfox 就是一個與網際網路無關的物聯網專用網路. 
  3. 物聯網中的 "物", 指的是具備無線傳輸能力 (Wifi, Bluetooth, Zigbee 或其他任何無線網路協定) 與專用 IP 位址的東西, 通常還具有感應環境的能力. 
  4. 物聯網吸引人之處不在於設備, 感應器, 或彼此連線, 而是當它們連線在一起後建立起一個關聯系統, 自己思考動作, 不需要人類的介入與互動. 當這些設備協力運作, 利用網路交換資訊, 進行各種日常活動與作業時, 就構成了所謂的環境智慧 (ambient intelligence), 一切都在背景自動完成.
  5. 物聯網透過網路把所有零碎資料集合起來, 獲得有用的結論, 提供給另一個智慧設備做出對應的行為. 大部分物聯網設備, 其智慧來自於分析其他多項設備所收集的資料, 而非靠設備本身的智慧.
  6. 我們其實已經有了一個發展中的物聯網, 包括感應器, 嵌入式設備, 雲端架構, 資料探勘與分析工具. 目前所面臨的主要問題是技術與成本, 欠缺讓設備互連的通訊協定以及足夠的經濟規模. 
CH2 : 智慧技術-物聯網如何運作
  1. 物聯網設備必須具備五項要求 : 1. 小尺寸, 2. 低耗電, 3. 低頻寬, 4. 能連網, 5. 能儲存. 
  2. 物聯網設備主要是透過無線網路連結在一起, 因為數以億計的設備要用有線網路連結太困難了. 
  3. IPv4 約可提供 43 億個 IP 位址, 而 IPv6 則可提供 430 兆兆兆 (undecillion) 個位址. 沒有 IPv6 的話, 物聯網不可能完整實作. 
  4. 無線網路的 RF 技術通常使用 2.4GHz (2.4~2.48) 與 5GHz (5.15~5.85) 的 ISM 頻段 (Industrial, Science, Medical), 這是免許可證免授權費的頻道, 只要功率小於 1W 且不會干擾其他頻道即可免費使用. 例如 Wi-Fi 的 802.11 b/g, 藍芽, ZigBee 都是使用 2.4G 頻段; 而 Wi-Fi 最新的 802.11ac 則使用 5G 頻段. 
  5. 雖然物聯網設備採用 Wi-Fi 技術很方便, 也是目前的主流, 但未來可不一定, 因為對於小型感應設備, 其他的通訊協定可能更適合. 這些設備會先連線到一個主設備, 進而透過 Wi-Fi 連線到網際網路. 
  6. Wi-Fi 網路是集線匯流式架構, 設備必須先連線到中央集線器或路由器, 再透過它與其他設備互相連線. 而藍芽則是採用對等網路結構, 設備與設備之間直接通訊, 組成一個 piconet (微網路), 其中一個是控制通訊的主設備, 可連接最多 8 個從設備, 這是物聯網架構的趨勢. 但藍芽屬於低功率短距離通訊技術 (約 30 呎), 不適用於遠距離大量資料傳遞, 在這方面 Wi-Fi 仍是王道.   
  7. Bluetooth Smart 是 Bluetooth 技術的改進版, 專為物聯網而開發, 其特點是功耗非常低, 只有傳統藍芽的幾分之一而已, 特別適合鈕扣電池供電的設備. 使用距離最高可達 200 呎. 
  8. 無線網狀網路 (Wireless Mesh Network) 與傳統將所有設備連線到中央伺服器或集線器的集中式網路相反, 它是將設備依序串聯, 作用範圍可從本身的 20~300 呎延伸到跨越整個城市, 網路內的設備各自獨立運作, 不需要中央控制器. 由於有多個傳輸路徑, 因此任何一台故障都不會危及整個網路. 無線網狀網路的通訊協定有 Bluetooth, ZigBee, Z-Wave, 以及 INSTEON 等. 網狀網路上的每一個設備都兼做中繼器 (repeater) 功能, 聯網設備越多, 網路就越強大. 
  9. 也有業者開發 M2M 的行動通訊網路, 例如法國的 SIGFOX, 他們利用一戰時用於潛艦水下通訊的技術, 開發出可以在低功率下遠距離傳輸少量資料, 運作於 900MHz 頻段的 M2M 行動通訊系統. 此系統傳輸速度不高, 約 100bps, 但一般感測器其實並不需要多快的傳輸速度. 由於採用較低頻的 900MHz 系統, 因此基地台傳輸距離較遠, 故同樣涵蓋面積所需的基地台數目比較少, 以法國為例, SIGFOX 目前已覆蓋全法 92%, 卻只用了 1500 個基地台; 比 4G LTE 所需的 40000 個少很多. 其他投資 IoT 專用網路的業者包括 Link Labs, On-Ramp Wireless, 以及 Iotera 等. 但有些人認為物聯網專用網路並無必要, 因為網路之間的相容性問題反而可能傷害物聯網的發展. 現有的無線技術三巨頭已足以應付物聯網所需 : 行動電話網路 (遠距離), Wi-Fi (區域), Bluetooth (個人網路).
  10. 物聯網要能運作不可能採人力密集方式, 一定要更自動化.
CH3 : 智慧電視-欣賞連線世界
  1. 目前市面上智慧電視的作業系統包括 : Android TV (Google), Fire OS (Amazon), Firefox OS (Panasonic), iOS (Apple), Roku OS (Roku), Tizen (Samsung), webOS (LG) 
  2. 智慧電視內部是一個小型電腦, 必須像電腦一樣具有安全保護, 但實際上大部分的智慧電視連最基本的防火牆防護都沒有, 結果讓在一般電腦越來越難成功的駭客攻擊, 現在在智慧電視等嵌入式設備上卻非常容易得手. 
  3. 你的智慧電視廠商可能會偷偷監視你, 例如 LG 的智慧廣告服務會記錄你的轉台動作, 知道你看了那些節目, 搜尋了那些關鍵字, 然後把收集到的資料賣給廣告主. 
  4. 內建攝影機的智慧電視可能會被駭客攻擊, 增加被闖空門的危險. 例如三星智慧電視曾被發現一個安全漏洞, 讓駭客可以入侵 Skype 程式從遠端開啟並控制電視上的攝影機. 
  5. 智慧電視要真正有智慧, 必須解決兩件事, 一是要讓控制更容易, 可以使用手機或平板取代, 甚至像 Siri 一樣用語音取代遙控器. 二是它要能記錄觀看習慣, 誰在甚麼時間愛看甚麼節目, 甚至連上 Facebook 或 Twitter 看看好友們都在看甚麼節目. 
  6. 未來的電視會成為具有互動性的住宅控制中心, 用客廳的大螢幕控制家裡的一切, 例如打開主臥室的燈, 開啟洗碗機或草皮灑水器, 關閉冷氣或電暖器, 自動切換到門口監視器影像, 看看誰按了門鈴或顯示未曾出現的來客臉孔, 也可以顯示即時的用水用電圖表, 甚至打開 Google 地圖, 顯示每個家人目前所在位置等等. 
CH4 : 智慧家電-從遙控爐具到會說話的冰箱

  1. 智慧冰箱功能 : A. 忘記關冰箱門時發出語音, 簡訊或訊息通知. B. 監控食物存量, 不足時加入購物清單通知你, 甚至自動傳送給你指定的供貨商送貨. C. 接收智慧電視美食節目傳送的食譜, 檢查所需食材庫存, 並將缺料列入購物清單. D. 依據冰箱內現有食材, 比對儲存的食譜, 提出晚餐料理建議. E. 與智慧爐具連線, 將食譜傳送給爐具, 自動設定烹調參數, 通知你放入食材以便烹調. F. 與健康手環連線, 知道你應該避免攝取那些食物, 當你開啟冰箱時會以語音提醒. 
  2. 智慧洗衣機, 烘乾機, 洗碗機具備幾十種甚至上百種行程, 可依據內容物決定行程. 
CH5 : 智慧住宅-今天的明日世界

  1. 智慧住宅又名住宅自動化, 初步功能可以讓我們透過網路用手機控制冷暖氣, 燈光, 家電, 門鎖, 電動窗簾與警報系統等. 進階功能是利用人工智慧, 讓這些設備可以自動開啟關閉與運作, 完全不須人力介入. 當全家出門, 車子離開出庫
  2. 智慧住宅的智慧化步驟有六個 :
    一. 基礎通訊 :  讓家中設備連上網路.
    二. 簡單指令 : 例如鎖門開門, 開燈關燈, 檢查信箱, 或跌倒時呼叫協助等. 也可以偵測環境做出反應, 例如有人經過移動偵測觸發警報, 信件塞入信箱屋內燈就亮起.
    三. 基礎功能自動化 : 以預設定時器指令自動控制設備, 例如室溫控制, 定時開關燈, 定時啟動或關閉警報系統或灑水系統.
    四. 跟蹤或採取行動 : 利用感應器收集你的生活習慣, 對你的行為模式, 睡眠模式與健康狀態進行全時間監視, 使用基本的人工智慧或預設演算法進行決策. 平常早上六點起床, 會幫你開啟咖啡機, 如果與平常行為不同, 判斷可能受傷或生病而發出求助警報. 水壓突然下降可能是漏水立刻關閉水源通知水電檢修. 某個房間溫度異常升高可能為失火就開啟灑水器並通知消防隊等等.
    五. 提醒與回答問題 : 此階段進階人工智慧除了從生活取得個人資訊, 還會從網路擷取資訊, 這時智慧住宅可能比你還了解自己. 它會透過語音提醒你何時吃藥, 健身, 餵狗, 打重要的電話等, 甚至精準回答你詢問的問題.
    六. 自動化任務 : 此階段不需要詢問提醒, 智慧住宅自動幫你搞定一切可以自動化的事物. 
  3. 智慧住宅需要甚麼零件或模組 ?
    一. 感應器 : 偵測環境變化
    二. 控制器 : 嵌入式微控器
    三. 致動器 (Actuator) : 如馬達, 開關, 閥門等.
    四. 匯流排 : 傳輸資料用
    五. 介面 : 通訊協定, 鍵盤, 按鈕, 開關等
    六. 網路 : Wi-Fi, Bluetooth 等
  4. 智慧玻璃是在玻璃內部或外部加上一層可以調整透明度的物質, 例如陶瓷塗料或氧化錫奈米晶體, 加上低壓電流就會變暗, 使玻璃變成半透明, 可遮蔽強光甚至隔熱. 
  5. Nest 公司的 Learning Thermostat 會學習家中成員喜歡的溫度, 回傳給 Nest, 他們與各電力公司合作, 當電力吃緊時透過 Nest 公司遠端調高家中冷氣溫度, 目的是幫電力公司平衡負載, 然後從電力公司省下的錢中分一杯羹. 
  6. Skybell 視訊智慧門鈴上內建攝影機與 Wi-Fi 連線功能, 即使出門在外仍能從手機得知誰按了門鈴. 
  7. 智慧監視器透過 Wi-Fi 與安裝於家裡各處的感應器連線, 例如偵測是否漏水的溼度感應器; 偵測失火的煙霧感測器; 偵測瓦斯燃燒不全的一氧化碳感測器等等. 當偵測到特定危險情況時, 監視器會透過簡訊或訊息傳送到手機上. 
  8. Amazon 的 Echo 是一個類似 iPhone 的 Siri 的資訊查詢設備, 利用語音辨識合成與人工智慧技術對使用者提出的問題加以解析後, 透過 Wi-Fi 到雲端搜尋資訊後以語音回覆. 它也可以播放網路串流音樂. 
  9. 在住宅自動化的無線網路技術上, 目前有三大主流 : INSTEON, Z-Wave, 與 ZigBee, 與傳統 Wi-Fi 的集中式連線不同, 三者都採用無線網狀網路 (Mesh network). INSTEON 採用無線射頻與電力線網路雙重技術來獲取傳輸穩定性, 但尚未被其他自動化業者廣泛接受, 是一個比較封閉式的系統. 而 Z-Wave 與 ZigBee 則已廣受住宅自動化業者採用, 例如智慧電表與瓦斯表, 它們分別採用 900MHz 與 915 MHz 頻段.
  10. 智慧住宅控制器廠牌很多, 例如 Control4, Crestron, HomeSeer, mControl, Quirky, SmartThings, Vera, Vivint, WeMo, Wink, X10 等等. 也有開源的住家自動化控制器, 例如 Thing System
  11. 住宅自動化擴充功能 : 智慧插座, 智慧家電, 保全系統, 照明控制, 環境顯示
CH 6 : 智慧衣著-穿戴式科技
  1. 穿戴式裝置包括 : 智慧手錶, 運動手環, 健康手環, 計步器, 追蹤器
  2. 穿戴式技術的目標是要將智慧型手機與電腦應用程式的先進功能放進每天穿戴的衣物裏頭, 能收集分析與顯示有用且重要的資訊, 卻不用掏出手機或拿出筆電.
  3. 製造穿戴設備的業者不僅要懂技術, 還要懂時尚, 不僅要追求功能, 還要講求好看與舒適. 
  4. 穿戴式追蹤器 : Lok8U, Trax, V.ALRT, Spy Spot
  5. 穿戴式錄影機 : Narrative Clip, Autographer, Lifelogging, GoPro
  6. 穿戴裝置收集到的資料未必停留在手機或電腦裡, 這些個人資料通常會回傳到製造商的伺服器裡, 甚至被分享給贊助廠商, 或出售給任何人. 出售顧客資料已經成為穿戴技術也者的穩定獲利來源.
  7. 保險業者是對穿戴設備收集到的資料最感興趣的業者, 如果能監視你的日常健康狀況, 進而頻繁地調整你的費率, 甚至拒絕理賠. 他們只想從顧客身上賺到錢, 所謂在商言商, 要是無法賺到錢, 他們才懶得理你. 所以務必將穿戴設備應用程式設定中的資料回傳功能關掉, 雖然這不一定有效. 
CH 7 : 智慧購物-你想要甚麼, 他們比你還清楚
  1. 智慧商店主要使用 RFID 與 NFC 技術來讀取商品資訊與付款. 而 Apple 的 iBeacon 系統則是利用 Bluetooth 技術與客戶手機通訊, 安裝於商店內各處的 iBeacon 裝置會合作對手機進行三角定位, 知道顧客位於店內何處, 再將附近特價商品訊息傳送到顧客的手機. 
  2. NFC 無線技術利用電場或磁場 (不是無線射頻電磁波) 短距離傳輸資料, NFC 付款資料儲存在顧客手機中, 透過 NFC 傳輸至商店的付款終端機, 不須拿出信用卡即完成付款. Apple Pay 就是採用 NFC 技術. 而 CurrentC 則採用 QR Code.
  3. 商店中的每一件商品都貼上 RFID 標籤是物聯網的重要象徵.
CH8 : 智慧汽車-連線奔馳
  1. 目前最先進的行車電腦是引擎控制裝置 ECU (Engine Control Unit), 它監視幾十個感應器的輸出資訊, 控制引擎的運作, 排氣與省油. ECU 通常使用 32 位元 40MHz 的 CPU, RAM 只要 1M Bytes 即足以執行簡單的程式碼控制汽車. 
  2. 目前的車內系統通常透過線路連接, 主要的通訊標準是 CAN (Controller-Area Networking), 最高速率達 500Kbps. 
  3. 自駕車要成功, 甚至成功推上市場, 必須先解決法律問題. 
CH9 : 智慧飛行器-無人機入侵
  1. Raven 這種現代化的監視無人機可以自已運作, 使用 GPS 技術與電腦化地圖找到目標後在上空盤旋自動回傳即時照片或影像. 更聰明的無人機可以自己起降, 自動避開障礙物, 找到目標後進行監視或攻擊.
  2. 智慧表層是含有數以千計的小型感應器的覆蓋物塗裝在飛機的外表, 讓飛機的溫度, 風速等變化可以傳送到主電腦用來調整飛航速度高度等參數以減少飛行時間與油耗. 
  3. 軍事無人機 : MQ-1 Predator (搭載 AGM-114 地獄火地對空飛彈進行空中攻擊), Raven (遠端偵察)

CH 10 : 智慧戰爭-機械的興起
CH 11 : 智慧醫療-我們技術易經準備好了
CH 12 : 智慧企業-做好事, 靠科技
CH 13 : 智慧城市-全民連線
CH 14 : 智慧世界-全球性萬物聯網

後面幾章我覺得沒啥值得筆記的, 就偷懶一下好了.


2016年10月20日 星期四

哪裡找尋微軟的 DLL 檔

今天找出很久以前用過的 Xilisoft 的 DVD Ripper Ultimate 軟體來備份 DVD 為 AVI 檔以便保存, 竟然出現 "找不到 msvcp71.dll 與 mfc71.dll" 錯誤而無法啟動程式, 可能自從升版 Win7 後就沒再使用的緣故.

上網找尋這兩個檔案, 終於在下面這個網站順利找到 :

http://originaldll.com

補足檔案後果然就能順利執行檔案了.


2016年10月19日 星期三

Arduino 超音波模組測試

去年三月跟露天賣家 XLAN 買了兩個超音波模組 HC-SR04, 之後就一直放在紙盒裡沒時間測試.

# 露天 XLAN 電子零件購買清單

9/23 日去 Nissan 做 QRV 75000 公里保養時, 把趙英傑的 Arduino 互動設計入門這本書帶去看, 仔細地把超音波感測器部分看完後, 本來想說要一口氣將超音波部分測完, 但接下來因為兩個颱風鄉下停電問題, 注意力轉到太陽能備用電力上面, 所以又耽擱了. 10/14 日要下午才進辦公室, 所以就著手進行測試, 但沒時間寫測試紀錄. 今晚得空就來把它做個完整記錄唄!

以下的測試程式是根據我閱讀下列書籍, 參考其中的範例程式加以改編而來 :
  1. Arduino 互動設計入門 2, 趙英傑, 旗標 (第 9-3 ~ 9-5 節)
  2. Arduino 輕鬆入門, 葉難, 博碩 (第 10-7 節)
  3. Arduino 完全實戰手冊, 王冠勛譯, 博碩 (第 6-1 節)
  4. Arduino 一試就上手第二版, 孫駿榮, 碁峰 (第 9-1 節)
  5. Make : 感測器, 運用 Arduinio 和 Raspberry Pi 感測的專題與實驗, 碁峰 (第三章) 
雖然不需要聯網, 為了方便我還是使用自己組裝焊接的 Arduino NANO+ESP8266 IOT 模組, 搭配一個 HC-SR04 超音波感測模組進行實驗, 此模組電路圖參考 :

# 製作 Arduino Nano + ESP8266 物聯網模組 (四) : 完結篇

其實以下實驗只需要一塊 NANO 加上 HC-SR04 以及幾條杜邦線就可以了.

首先整理一下超音波的相關知識. 所謂超音波是指超出人耳所能聽到的頻率 20KHz 的音波, 人類的聽覺一般只能聽到 20Hz~20KHz 左右的音域, 但某些動物如狗, 海豚或蝙蝠等, 可以聽到 20KHz 以上的超音波, 例如海豚利用超音波傳遞溝通訊息; 而蝙蝠則利用超音波在飛行中定位以避開障礙物, 參考 :

# Wiki : 超音波

超音波於 19 世紀被發現, 並於第一次世界大戰首次應用於潛水艇之偵測, 如今在工業, 醫學, 與農業上都有廣泛之應用, 例如非破壞性檢測中的孔隙偵測, 孕婦姙娠掃描, 人體組織斷層掃描, 物件清洗, 以及蔬果品質檢測等等, 參考 :

# 超音波 - 國立嘉義大學 (pdf)

在空氣中傳遞的超音波其頻率在 20K~200KHz 之間, 頻率越高, 衰減程度越大, 可傳播的距離越短. 一般常用的超音波模組, 其頻率通常是 38K, 40K, 或 42KHz 這三種. 我買的 HC-SR04 超音波模組使用的是 40KHz 的超音波, 可探測距離為 2cm~400cm. 它有如下所示的 Vcc (5V), Gnd, Trig, Echo 四隻腳 :

Source : fritzing

其規格如下 :


只要在 Trig 腳送進至少維持 10 微秒以上的高位準訊號, 便能觸發模組中的超音波發射器送出 8 個連續的 40KHz 超音波脈衝, 接收器收到反射波後便會在 Echo 腳輸出一個與量測距離成正比的高位準脈衝, 此 HIGH 位準脈衝上緣可以看成超音波開始發射時間; 而下緣則是接收到反射波的時間, 所以整個高位準脈衝的寬度就是超音波往返的總時間, 參考 :

# HC-SR04 規格 - Micropik (pdf)
# HC-SR04 超音波感測器介紹
# [X-LAN] Arduino HC-SR04 超音波測距傳感器 超音波測距儀(附範例) $35

使用超音波量測距離必須知道音波的傳遞速度, 這主要取決於大氣的密度, 而溫度又是影響空氣密度的主要因素. 音速與溫度的關係如下 :

音速=331.5 m/s + 0.6*攝氏溫度

在常溫 20 度時, 音速是 331.5+0.6*20=343.5 m/s, 大約是 344 m/s.

超音波測距的原理是利用一個超音波發射器與一個接收器組成的模組來量測音波從發射到收到反射波的時間, 乘以音速即可得到音波往返的距離, 除以 2 即得與反射物體間的距離. 在常溫 20 度下, 音波前進 1 公分約需 58 微秒, 計算如下 :

1 公分=0.01 公尺=(344 公尺/秒*t)/2  

此處除以 2 是因為音波花了 t 秒往返走了兩倍距離, 須除以 2 才是單程距離.

t=(0.01*2)/344=5.8*10e-5=58*10e-6 秒=58 微秒

注意, 這個 58 微秒是超音波往返距離 1 cm 障礙物所花的時間. 而上述 HC-SR04 的 Echo 腳輸出的高位準脈衝, 其時長即是超音波往返所花的時間, 因此只要用 Arduino 的 parseIn() 函數量取 Echo 的脈衝時長, 再除以 58, 即可得到與反射超音波的障礙物之間的距離是幾公分了. 關於 parseIn() 參考 :

# parseIn()

此函數有 2 或 3 個參數 :

pulseIn(pin, value)
pulseIn(pin, value, timeout)

第一參數 pin 是 Arduino 接 HC-SR04 的 Echo 腳之 DIO 數位腳位編號, 第二參數 value 是要偵測的位準 (LOW/HIGH), 對於 HC-SR04 而言要用 HIGH, 第三參數 timeout 是等候脈衝出現的延遲時間 (單位是微秒), 預設是 1 秒 (即 1000000). 如果在 timeout 時間內未偵測到脈衝, 則回傳 0.

下面程式是我參考 Arduino 互動設計入門 2 改編, 用來測試與障礙物的距離 :

測試 1 :

const byte trigPin=5; //Output pin to trigger ultra sound
const byte echoPin=6; //Input pin to receive echo pulse

void setup() {
  pinMode(trigPin, OUTPUT); //Arduino pin default input
  Serial.begin(9600);
  }

void loop() {
  unsigned long d=ping()/58; //calculate distance
  Serial.print(d);
  Serial.println("cm");
  delay(1000);
  }

unsigned long ping() { //send 10us pulse to HC-SR04 trigger pin
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);  //sustain at least 10us HIGH pulse
  digitalWrite(trigPin, LOW);
  return pulseIn(echoPin, HIGH);
  }


此程式將 D5 連接到 HC-SR04 的 Trig 腳, D6 接到 Echo 腳, 由於 Arduino 的數位接腳預設是 INPUT, 因此只需要在 setup() 中定義 D5 為 OUTPUT 即可. 這裡 ping() 函數用來對 HC-SR04 的 Trig 腳送出 10 微秒的 HIGH 準位脈衝, 以觸發發射器送出超音波, 然後用 pulseIn() 函數測量 Echo 腳送出的 HIGH 脈衝寬度傳回. 此值為超音波往返的時間 (微秒), 將其除以 58 即得與障礙物之間的距離 (公分).

序列埠監控視窗擷取訊息如下 :

36cm
19cm
16cm
17cm
47cm
3736cm
6cm
59cm
48cm
3731cm
6cm
3744cm
6cm
3761cm

我用紙板當障礙物來反射超音波, 其中 37XX 公分是突然將紙板拿開, 使得超音波沒有在有效距離 400 公分內遇到障礙物, ping() 函數就回傳了這個異常數字. 我用尺校對測量值發現還蠻準的, 誤差不大.

上例中將量測到的超音波往返時間除以其行進 1 公分所需時間 58 微秒得到距離的方法, 似乎讓人難以直接理解, 我甚至覺得這樣算出來的應該是往返的距離吧! 實際上這是單程的距離沒錯, 因為兩個雙程時間相除後,  2 消掉了, 所以得到的是單程距離.

在 "Make : 感測器, 運用 Arduinio 和 Raspberry Pi 感測的專題與實驗" 這本書第三章的超音波測距範例中, 我找到一個比較容易讓人理解的測距程式寫法, 改編如下 :

測試 2 :

const byte trigPin=5; //Output pin to trigger ultra sound
const byte echoPin=6; //Input pin to receive echo pulse
const float temperature=20; //Celsius degree
float v=331.5 + 0.6*temperature; //sound velocity


void setup() {
  pinMode(trigPin, OUTPUT); //Arduino pin default input
  Serial.begin(9600);
  }

void loop() {
  int d=ping(); //get distance (cm)
  Serial.print(d);
  Serial.println("cm");
  delay(1000);
  }

float ping() { //send 10us pulse to HC-SR04 trigger pin
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);  //sustain at least 10us HIGH pulse
  digitalWrite(trigPin, LOW);
  unsigned long tUs=pulseIn(echoPin, HIGH); //return micro seconds
  float t=tUs/1000.0/1000.0/2; //turn us to s of single way
  float d=t*v; //single way distance (meter)
  return d*100; //turn m to cm
  }

此程式將上述聲波速度隨溫度而變的公式寫進來, 只要改變 temperature 常數, 波速也會隨之變化. 在 ping() 函數中, pulseIn() 傳回的是音波往返的時間 tUs, 單位為微秒, 除以 1000000 即變成以秒為單位, 除以 2 即是單程傳遞時間 t, 將其乘以波速 v 即得單程行進距離, 也就是超音波模組與障礙物之距離, 這樣寫可能比較好理解.

在自走車的避障實驗中, 如果要在距離障礙物 5 公分以內時發出警告音該怎麼做呢? 參考之前做的 Arduino 聲音測試中的測試 1 :

# Arduino 的聲音測試 (一)

我將上面測試 2 改為如下測試 3 :

測試 3 :

const byte trigPin=5; //Output pin to trigger ultra sound
const byte echoPin=6; //Input pin to receive echo pulse
const float temperature=20; //Celsius degree
float v=331.5 + 0.6*temperature; //sound velocity
int buzzerPin=9;  //D9 conectted to a buzzer

void setup() {
  pinMode(trigPin, OUTPUT); //Arduino pin default input
  Serial.begin(9600);
  }

void loop() {
  int d=ping(); //get distance (cm)
  Serial.print(d);
  Serial.println("cm");
  if (d < 5) {alarmBeep(buzzerPin);}  //beep when distance less than 5cm
  delay(1000);
  }

float ping() { //send 10us pulse to HC-SR04 trigger pin
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);  //sustain at least 10us HIGH pulse
  digitalWrite(trigPin, LOW);
  unsigned long tUs=pulseIn(echoPin, HIGH); //return micro seconds
  float t=tUs/1000.0/1000.0/2; //turn us to s of single way
  float d=t*v; //single way distance (meter)
  return d*100; //turn m to cm
  }

 void alarmBeep(int pin) {
  tone(pin, 1000, 1000);
  delay(2000); 
  } 

不過這個程式有個缺點, 當距離小於 5cm 時會受到 alarmBeep() 中的 delay() 影響, 使得讀取距離的動作被耽擱了 2 秒.




2016年10月18日 星期二

汽車衛星導航評估

前陣子才決定那個偶而無法定位的舊導航機繼續用到壞掉為止, 那是買 QRV 的時候業務員幫我開去安裝的, 雖然圖資沒辦法更新 (因為是某不知名品牌), 但耐用十年也算厲害了. 哪知這東西不能讚美, 剛說完沒兩個禮拜螢幕就一閃一閃, 然後就完全開不了機了, 連帶倒車顯影功能也沒辦法用, 因為倒車鏡頭是透過這個照後鏡型導航機的螢幕顯示的, 所以我最近倒車都要小心翼翼地憑感覺.

過去兩周花了蠻多時間在研究該裝甚麼樣的導航機比較好, 公司福利社還有一萬元福利金, 必須在十月底前用掉, 否則就會自動歸零遭到江湖恥笑. 我在公司福利會網站搜尋導航機, 較知名的主要有 Mio, Papago, Trywin, 以及 Garmin 等公司產品. 經過爬文發現 Mio 與 Papago 網友較不支持, 因為之前的機型曾有圖資不正確或導航繞遠路問題存在, 參考 :

蘋果日報實測Garmin、PAPAGO和Mio三大衛星導航


這影片只講到 Papago 導錯路, 沒提到 Garmin 的導航有沒有問題. 關於 Papago 的圖資, 這裡有一篇文章提到 Papago 原先是使用導航王圖資, 後來拆夥之後圖資就換了, 可能因此產生導航錯誤的問題 :

智慧手機導航方案的難兄難弟–Papago和導航王

導航王最大的優點是圖資更新速度快, 景點圖資非常豐富, 而且有機車導航方案, 但缺點是路徑規劃比較差, 可能讓使用者違反交通規則 (例如要我們轉進不能左轉的道路) 或導入汽車無法行駛的小路.

至於 Trywin, 廣告上說這是日系第一品牌, 但是我在下面這篇文章卻看到有人說它其實在日本是二三線品牌, 而且機子是台灣代工的, 不是日本製, 甚至有訊號飄移與當機問題 :

[請益]TRYWIN導航機好用嗎?

我自己有打電話到 Trywin 客服去問, 事實上他們硬體都是中國製的, 不是台灣製. 下面這篇 PTT 討論文章對 Trywin 評價更差, 而多人推薦 Garmin :

[問題] 導航王、PAPAGO、GARMIN、Trywin懇請推薦

看來似乎 Garmin 頗獲好評, 但是好評的代價就是價格比較貴, 也有網友說貴得值得. 我打了好幾次電話給 Garmin 客服詢問產品規格, 覺得他們態度非常好, 有耐心聽我講我的問題與需求. Garmin 的產品都是在台灣生產的, 不是 MIC, 其創辦人之一為台灣人高民環, 參考 :

從南投竹山鄉下小孩,到身價660億元的台灣人--高民環

Garmin 的導航機產品有很多款, 我最起碼需要有導航+倒車攝影, 但在福利社網站搜尋時, 發現已經有將導航, 行車紀錄器, 以及倒車攝影功能整合於一機的產品, 這樣可以避免駕駛台一堆線材非常凌亂的問題. 我找到福利社架上此類產品價格如下 :

# TRYWIN DTN-3DX PRO 行車記錄衛星導航機智慧整合機加贈8G $7590
# GARMIN NÜVI 3595R 行車記錄+多媒體電視導航機(贈三孔車充+2禮) $9680
# GARMIN NUVI 4592R PLUS WI-FI多媒體衛星導航(贈三星原廠手機藍牙自拍組) $11450
# GARMIN NUVICAM 道錄守護領航家衛星導航(贈PHILIPS SHB5100 入耳式無線藍牙立體聲耳機) $11900
# GARMIN NUVI 4695R PLUS WI-FI多媒體電視衛星導航(贈PHILIPS SHB5100 入耳式無線藍牙立體聲耳機) $14900

這裡列出 Trywin DTN-3DX Pro 是因為其價格較親民, 而且看到下面這個導航速度 PK 影片又覺得似乎 Trywin 的也不錯 :

# Trywin 3DX捌 他牌PK


這裡的他牌看起來是 Garmin 的, 但是沒註明型式, 搞不好是拿人家早期最低階款式來比也說不定, 看這種 PK 要特別小心. 這款 Trywin 3DX 8 是跟 Pro 約略同等級的, 詳見 :

# Trywin DTN 3DX8 3DX捌 免持+導航+紀錄器+胎壓偵測 通通裝一起
Trywin 3DX捌 18合1之1
Trywin 3DX捌 18合1之2
Trywin 3DX捌 18合1之3
Trywin 3DX捌 3D路口擬真圖
Trywin 3DX VIVA TV 購物台3C 專案節目 1/2
Trywin 3DX VIVA TV 購物台3C 專案節目 2/2
最近發現TRYWIN DTN-3DX這台新東西
Trywin DTN-3DX 貳 搭載導航王K3 軟體介紹

但是這款 3DX捌公司福利社沒賣, 只有 3DX Pro (), PChome 賣 7990 元 :

PChome : Trywin 3DXPRO 5吋智慧型3D導航機整合機聲控升級版 $7990

本來一度決定要買 Trywin 3DX Pro 了, 因為我要的功能它幾乎都有, 而且 10000 元還有找, 很划算啊! 但是看到下面這篇 :

「今月の話題」:GPS導航不秘師

提到 : "至於Trywin的DTN-3DX系列(含你剛說的鋼鐵人3版本)把鏡頭做在機背上,整合在同一台機器是方便啦,但錄影效果一般而言仍然不如獨立式鏡頭,像GARMIN的3560R它行車記錄器採獨立式設計,整體來說,鏡頭、鏡片還不錯。", 又動搖了, 加上打了兩三次客服, 我覺得他們客服似乎是總機, 對自家產品不是很熟, 態度也不甚積極, 所以就打住了, 轉而研究 Garmin 的產品 : 3595R, 4592R PLUS, 4695R PLUS 以及 NUVICAM 這四款.

首先看上了 3595R, 這款是 Garmin 第一台 Android 系統導航機, 其外接行車紀錄器是 GDR-30, 有內建數位電視, 也有倒車攝影的 AVIN 接口. 參考 :

Garmin 3595r 比想像中聰明
Garmin 3595r 使用 google 導航 心得分享
Android 導航機Garmin nuvi 3595R 評測:數位電視、行車記錄器、倒車 (有實體圖)

下面這篇比較了 3595R 與 4XXX 系列的優點 :

GARMIN nuvi 3595R

"優點是可上google商店+數位電視+hdmi輸出+2組影像輸入(一組強制輸入,一組手動輸入)我覺得 3595 比新的 4 系列要值得買多了,便宜,又是全功能 Android,不像 4 系列的 Android 根本是殘廢的。".

Garmin 3595r 比想像中聰明

原來 3595R 的 Android 4.0.4 是全功能完整的安卓系統, 有 Google Play 可下載各種 App, 甚至可下載導航王來跑. 但是這樣也有個缺點, 就是可能因為下載太多 App, 可能占用過多記憶體導致當機或異常, 例如下面這篇 :


似乎作者遇到蠻多問題, 我覺得可能是因為這樣, Garmin 在 4xxx 系列就乾脆去除 Google Play, 以免讓問題更複雜. 當然這是 Garmin 第一台 Android 系統導航機, Bug 特別多也是可以理解的. 針對 3595R 容易當機問題, 我有特別打電話詢問客服, 是否後來出廠的產品有把這些 Bug 處理掉? 客服沒有正面答覆, 反而建議我買比較新的 4695R PLUS, 但這款市價要 13990 :


我們福利社賣 13900 (雙十節降價 1000, 但取消贈送立體聲藍芽耳機), 但我覺得駕駛座不需要看數位電視, 更何況我車上就有裝數位電視了, 雖然比較舊, 螢幕也劣化了, 但至少還可以聽電視. 不過 3595R 有兩個 AV IN, 其中固定夾上面的可以接到車攝影, 主機上的則可以當作其他視訊來源的輸入, 參考 :  

請教 3595R 後行車真能與倒檔連動?

"Garmin 3595R 一共有支援兩組 AV IN,一組在 Garmin 3596R 主機上,一組在固定背夾上,當固定背夾上的這組 AV IN 有訊號輸入時,2595R會自動切換到顯示影像的模式,所以可以用來接倒車鏡頭的訊號(鏡頭的電源並接在倒車燈),當車子打入R檔時,倒車燈亮->倒車鏡頭受電開始動作->3595R收到倒車鏡頭影像訊號->自動切到倒車鏡頭畫面.至於主機上的這組 AV IN 則不會在有訊號輸入時自動切換到影像顯示畫面,要自己啟動影像輸入的功能才匯顯示,可以用來連接外接的以像播放裝置."

"至於行車記錄器部分,3595R有提供另一個接口用來連接 GDR30 行車記錄器的主機(一條線同時供電給 GDR30 接收 GDR30 回傳的影像資料),第二顆鏡頭(放在車後)是連接到 GDR30 上而不是 3595R 主機上"

經評估後, 我覺得沒有 數位電視的 4592R 比較符合我的需求, 它跟 4695R 就差在有無數位電視以及螢幕大一寸而已, 都有 GDR50 行車紀錄器, 以及此紀錄器所附帶的 ADAS 先進駕駛輔助系統, 而且使用強力磁鐵附著在固定座上, 要拆下來帶著走也比 3595R 方便, 參考 :

# PChome : GARMIN nuvi 4592R Plus Wi-Fi多媒體衛星導航 $11900
# 新增駕駛輔助系統 行車安全更進化 Garmin nuvi 4592R Plus試用分享
【禾笙科技】免運 GARMIN 4592R-Plus 導航機 WIFI 5吋 ADAS駕駛輔助系統 4592R $11990 (實機拍攝)

關於 4592R PLUS 倒車攝影部分, 它有 wifi 無線倒車攝影 GRVC30, 但價格蠻貴的, 要 3990 元, 不考慮.

# PChome : GARMIN GRVC 30 Wi-Fi無線倒車攝影鏡頭 $3990

我還是盡量沿用我原先的有線式倒車攝影, 根據下面這篇所述, AV IN 需要的輸入線材必須是 3.5mm 接頭 :

2015/11 水漾藍開箱~(garmin 4592r plus)

但是下面這篇卻說 4592R PLUS 不能接倒車顯影 :

Fabia 省錢改裝4: 導航、倒車顯影、行車紀錄器

"看上了一台4592R,這台好處是有附行車紀錄器,還可以買額外導線加裝倒車,又可以通通整合到一個螢幕上,4592R-plus反而無法加裝倒車(有夠神奇)"

我問客服確定是有的, 它的 AV-IN 在固定座上面, 但需要一個 AV 端子對其 AV-IN 插槽的轉接線, 參考原廠配件 :

# NAVTUNE 7190 倒車影像連接線 $420

下面這篇有教如何自製連接線 :

Garmin影像輸訊號線DIY

但 Garmin 客服說最好還是買一條原廠轉接線比較穩, 一條定價 420 元, 問公司福利社也是這個價錢. 如果決定買 4595R PLUS 的話, 加購連接線是 11490+420=11910, 加上安裝費 800 元, 總共是 11910+800=12710 元, 我還要倒貼 2710 元哩!

這比起買 Trywin TDX PRO 的 7590 整整高出 5120 元! Garmin 果然比較高貴啊! 但是光看價格容易迷失, 要看自己需要的是甚麼, 像我不需要數位電視, 所以捨棄 4695R PLUS. 規格上, 買 4595R PLUS 比 TDX PRO 勝出的地方是 :
  1. 有聲控搜尋功能
  2. 有藍芽免持方便接聽來話
  3. 磁附式固定座拆機容易
  4. 有 ADAS 先進駕駛輔助系統
上面四項優點中有三點跟增進駕駛安全有幫助 (聲控搜尋效果據說不要寄望太大). 這四項功能加上 Garmin 的品牌聲譽, 差 5000 多元似乎也合理. 但是又覺得買 Trywin 3DX Pro 就不用貼 2710, 福利金 10000 元還有找, 猶豫不決該買哪一個好, 蠻苦惱的.

關於聲控搜尋功能參考 :

20141206_Garmin nuvi 4695R之語音功能


在公司福利社買 Garmin 4592r Plus 贈品為三星自拍棒, 市價要 689 元 :

Samsung 三星 Galaxy 原廠藍芽自拍棒(原廠公司貨) $689

其他參考 :

# Garmin : 預警成就真安全
【GARMIN】【NÜVI 57】GARMIN NÜVI 57 新玩樂領航家衛星導航 (贈GPS收納包+方型布質吸盤式沙包車架) $3790
精巧實用再升級 Garmin nuvi 57導航機試用分享
送保護貼 導航吸盤 遮光罩 擇一 全新公司貨保1年 GARMIN nuvi 2567T 5吋 聰明夥伴聲控藍芽 導航 $4815
不再迷路! 導航機新革命!│科技新聞線│三立財經台CH88
GARMIN導航機,車子啟動已經約3分鐘了,還在失憶。
莎莎代言‧日本Trywin Pocket DTN-5500衛星導航 簡易開箱
導航APP新趨勢! 圖資更新速度戰│科技新聞線│三立財經台CH88
【MQUEEN膜法女王】 吸盤 車用手機架 導航 固定 支架 手機座 萬用 290
【AIBO 鈞嵐】AIBO GH5947 汽車後視鏡專用 多功能手機/導航車架 $290
龐德示範如何安裝行車紀錄器
# 中天新聞》「後視鏡型」行車記錄器 天熱下垂 邊開得邊扶
行車記錄器教戰! 達人教你怎麼選
# 感受全面升級 Garmin nuviCam導航機試用分享 (有大量截圖)
# Garmin 3560+倒車顯影安裝 心得分享
# 代客安裝GARMIN 2585R 安裝完工記錄+倒車顯影鏡
# 高雄【阿勇的店】汽機車精品配件 (07-7407361,手機:0982-599920)
[安裝]十項全能Garmin 4695R智慧聯網導航機
# GARMIN 2565RT普拉司 行車導航3合1
# GARMIN nuvi 4590開箱與分享
[哈GAME族]aibo GH5947 汽車後視鏡專用 多功能手機架/導航車架 固定在後視鏡 開車無死角 鈞嵐代理服務 $188

2016-11-11 補充 :

今天光棍節上公司福利社網站看看是否有特惠 ~~ 沒都沒有, 只是贈品由三星原廠手機藍牙自拍組改為 GPS 收納包 4 好禮, 價格從 11450 降為 11290 :

【GARMIN】【NUVI 4592R PLUS】GARMIN NUVI 4592R PLUS WI-FI多媒體衛星導航(贈4好禮) 贈GPS收納包+三孔車充擴充座+電容式觸控筆+螢幕保護貼 福利價:11290市價:11990

2016-11-25 補充 :

今天收到福利社來信要求福利金須在 12/20 前用完, 我上去查看發現又降價 300 元了 :

【GARMIN】【NUVI 4592R PLUS】GARMIN NUVI 4592R PLUS WI-FI多媒體衛星導航(贈4好禮) 贈GPS收納包+三孔車充擴充座+電容式觸控筆+螢幕保護貼 福利價:10990市價:11990


2016年10月17日 星期一

2016 年第 40 周記事

過去的一周只上了三天班, 因為周一是國慶, 週三又去蓮潭會館上勞教課, 而週四早上開會, 實際上花在工作的時間不多. 我最討厭的工作就是開會. 都甚麼時代了, 還要花一個早上去討論, 老實說, 這種跨部門的會議大部分跟我們單位無關, 但還是得坐在那邊聽他們吵, 雖然聽不太懂在吵甚麼. 其實現在開會的目的並非要解決問題, 而是要彰顯長官存在的價值 : 裁示.

本周末原本預計要將 20W 小型太陽能板安裝在舊豬舍後面的廁所屋頂上, 所以週六把久已未帶回鄉下的電子實驗袋帶上, 但現實永遠追不上理想, 週日下午弄好晚餐的湯與滷冬瓜後, 就開始準備安裝事宜. 量妥角鐵尺寸後已下午四點, 趕緊去小漢借裁剪器將支撐架剪好, 需要斜邊兩個, 立柱兩個, 立柱固定座兩個, 以及上方的橫綱一個, 總共是 7 個角鐵部件, 另外還需要地虎四支以及固定角鐵的螺絲螺母組 8 個 :


但回來後才想到角鐵必須先上漆防鏽才行, 哇咧, 還要等油漆乾, 本周肯定無法完成安裝啦! 也好, 反正電壓監視電路以及 Arduino 程式也還沒寫好, 未來一周務必要搞定, 這樣才不致耽誤下周的進度. 傍晚刷完油漆被菁菁看到, 她說也想要刷, 只好帶她到樓頂去把已開始生鏽的風力發電機的支架重新補漆, 或許下周末回家也能把風力發電機重新安裝回去. 我決定還是回歸原先的固定座安裝方式, 因為沒有集電環的話, 發電機追隨風向轉動早晚會把電線絞斷.

不過在這之前得先把程式搞定才好.


2016年10月14日 星期五

買小森食光 DVD

今天要下午才進辦公室, 早上在家玩 Arduino 的超音波實驗時, 心血來潮想到去年六月底去鹽埕區電影圖書館看的療癒系電影 "小森食光夏秋篇" (小森在本州東北岩手縣八幡平市附近), 是否現在 DVD 已上市了呢?

# 小森食光
# 高雄電影館 : 小森食光夏秋篇

馬上在露天搜尋, 哈哈哈, 果真有在賣耶! 夏秋篇與冬春篇兩片 DVD 賣 480 元 :

# 合友唱片 面交 自取 小森食光 夏秋 - 冬春 雙碟限量版 橋本愛 全新正版 DVD $480

如果在台北自取比較划算, 否則加上郵資 60 元, 就要 540 元了. 另外我找到誠品書店也有在賣, 特價 549 元; 而博客來卻要 600 元 :

# 誠品 : 小森食光: 夏.秋篇 & 冬.春篇 (2DVD/限量版) $549
# 博客來 : 小森食光 夏/秋 - 冬/春 雙碟限量版 DVD $600

露天與誠品只差 9 塊錢, 乾脆下午去公司時順路去誠品買就好了, 反正也要去文化中心還一本書. 於是打了電話問大統和平店的誠品 (07-2220800) 看看有無庫存, 所幸還有一組, 就請他們先幫我保留.

Youtube 有冬春篇的片段如下 :





我很好奇, 不告而別的母親突然寄來的那封信到底寫了些甚麼, 橋本愛還要展現哪些好吃的料理呢? 我迫不急待想看秋冬篇了哩!


2016年10月12日 星期三

2016 勞教班 & 組裝書桌

今天請公出到蓮潭會館參加本年度勞教班, 上完課後終於搞懂一例一休與二例的差別, 原來在目前勞基法下, 實施二例將使許多行業假日調派人手遭遇困難, 但是我國勞工工時太長也是全球排名很前面, 我比較傾向一例一休但不要刪除國定假日, 不然就增加勞工特休假.

蓮潭會館餐點雖然不能跟海港比, 但總比去澄清湖好吧! 這裡地點適中, 環境也不錯, 旁邊就是原生植物園, 本來打算早上早點去, 先到植物園走走的, 但整理內務花了點時間, 八點多出發就太晚了.

每次吃歐式自助餐都好像是虐待自己的胃, 雖然我秉持少量慢吃的要訣, 但是到最後一盤甜點時, 好吃的栗子蛋糕只能囫圇吞棗, 無法細細品嘗美味了.


傍晚回到家發現菁菁的書桌已經寄來了, 晚上花了整整三個小時才組裝完成, 省錢的 DIY 真的很花時間啊! 但即使是買特力屋的 2990 元那張書桌, 也是要自己組裝啊! 這逃不掉的. 不過組好後感覺還不錯哩! 跟客廳木椅顏色很搭, 菁菁超喜歡, 馬上把化妝用的機師頭與可愛小玩偶擺上去, 我也覺得這張超便宜的書桌還真好看 :


菁菁終於有自己的書桌囉! 這樣她以後做功課就不會占用我的電腦桌啦! 一邊做功課一邊聽音樂會專心才怪. 此書桌說明書轉成圖檔如下 :








看這組裝圖就知道為啥要花兩小時組裝了.

# 好視力LED探索護眼檯燈5W/時尚白UTA208W $799


2016年10月11日 星期二

2016 年第 39 周記事

本周放了三天國慶連假, 但也下了三天的雨, 所以鄉下屋子裡面濕氣很重, 除濕機運轉一個晚上就停了, 因為水箱滿了. 濕氣問題一方面也是頂樓樓板有縫隙會滲水, 這問題不解決的話, 一樓房間就無法重新裝潢.

過去這一周主要在忙下面幾件事 :
  1. 幫菁菁準備書桌
  2. 評估要買哪一種 GPS 導航機
  3. 評估建立太陽能緊急電源方案
  4. 整理高雄與鄉下的雜物
忙了一周, 菁菁的書桌搞定了; 導航機評估也近尾聲, 就差還沒放進購物車; 太陽能緊急電源也有個底了; 至於雜物整理, 嗯, 那是長期抗戰! 但我也是想盡快把視線所及都搞得整整齊齊, 我這個人不能容忍熵 (音同商或低, 但電腦輸入時要用低) 值無限擴大, 我厭惡失序與混亂狀態.

因為忙這些事, 所以 Arduino 的學習進度是 0. 但下周起我就要恢復進度了, 預定年底前把 Arduino 會用到的感測器都玩過一遍, 明年要回到 Raspberry Pi 了.

小阿姨下來高雄十天了, 除了上週日拿表弟幫我在華航班機上購買的手錶過來給我, 短暫聊了一下之外 (因為要趕去看廟會), 都沒時間坐下來聊是非, 週日晚上小舅媽邀我們去她家吃飯, 終於能聊一聊了. 聽她講完故事後, 我只是覺得很感慨, 人到底追求的是甚麼? 為了自己的成功捨棄一切, 值得嗎? 年過知命之後漸漸懂得, 人生要面對無數個選擇, 在下重大決定之前要再三問自己, 值得嗎? 人生的一切都是不公平, 唯獨時間無法逆轉這件事, 眾生平等.

在經歷過去兩次颱風造成的停電之後, 我決心在鄉下建立太陽能緊急電源, 停電時不至於到處黑漆漆, 平時則支應冰箱 (約 200W), ADSL 數據機 (約 10W), 無線基地台  (約 10W), 以及祖堂照明  (約 10W) 等之用, 這樣大概 500W 的能板就夠用了.

不過在這之前必須把去年買來實驗用的 20W 太陽能板搞定才行, 國慶日下午等信宏他們走了之後, 我拿了梯子爬上舊豬舍後面廁所的平頂, 把太陽能板拿上去擺看看在哪裡安裝較適合, 發現用角鐵朝南 20 度鎖在靠近邊緣處即可 :


這塊板子的蓄電主要供應屋外廁所夜間感應照明以及移動偵測之用, 使用 6.2Ah 電池供應 Arduino+ESP8266 兩三天應該綽綽有餘. 為此我還將作為橋接器之小米無線基地台放在二樓靠東側窗戶, 這樣在太陽能板安裝處還能收到 Wifi 信號, 主要是為了透過物聯網紀錄太陽能板的發電狀態以及遠端控制之用.


2016年10月10日 星期一

買菁菁的書桌

上週將客廳進來右側木椅上的雜物堆清理完畢, 準備在那裏放一張書桌給菁菁讀書做功課用, 免得她每天都占用我的電腦桌, 開著電腦邊聽音樂邊做功課, 既耗電也不專心. 10/3 日跑去特力屋看書桌, 我喜歡的是簡約有抽屜的這張, 尺寸是 W100D55H75, 價格 1699 元, 可惜沒有書架 :


我想還是帶菁菁來看比較好, 她選的是左右有支架, 而且有抽屜有書架的這張, 尺寸是 W91D52H149, 但價格不便宜, 要 2999 元 :


她也不是那種固執的人, 如果太貴也會自己踩剎車, 甚至阻止我花大錢消費. 我說不然找時間去 IKEA 看, 說不定有更好的款式. 回來上 IKEA 網站查詢, 結果都沒有我們想要的 : 便宜, 有書架, 款式可接受. 後來想到家樂福好像也有賣書桌, 但款式可能不多, 我 10/5 日先跑去看, 順便買水果與麵包, 結果只找到一個符合我們要求的, 價格是 1199 元.

10/8 日週六吃完喜酒回來就載菁菁去看, 本想叫工作人員從架上抬下來讓我們看看, 哪知這款已經賣完, 不知何時進貨, 而且菁菁不喜歡所貼的白橡樹皮, 問是否有其他顏色, 他說只有架上這顏色, 只好作罷. 週六晚上回到鄉下, 上網搜尋書桌發現 UDN Shopping (買東西) 購物網有賣這款書桌, 而且有兩款顏色可選, 另外一種是胡桃木, 而且價格更便宜, 只要 1039 元, 尺寸是 W90D60H112.5 (這是含書架的高度, 桌面高度是 71 cm) :

# 《Hopma》開放式書架型書桌-二色可選 W90D60H71(112.5) $1039


菁菁說這款 OK, 還好有胡桃木顏色的可選, 不然就要買上面特力屋那個 2999 元的, 價格較貴是個問題, 但它的支架似乎會擋住牆上掛的畫也很麻煩, 我還得把畫移到別處.

晚上回高雄後下單訂購, 發現剛好 UDN 有活動, 滿 799 現折 100 元, 故總價是 939 元 :


不過這是 DIY 的, 所以到貨後還得花一個晚上時間來組裝.

其他參考 :

包浩斯現代三抽工作桌(經典原木色)/電腦桌/書桌/辦公桌 W90D45H70 $1199
布蕾兒時尚書桌 W100D50H75 $1480
# 【DronesVision】Vaavud雷神之槌 智慧型手機風力計-海姆達爾白 $1750
# D-Link友訊 DCS-930L mydlink Wireless N 無線網路攝影機 $999