在「命令提示字元(cmd)」界面下,切換到指定的目錄(資料夾),例如:「c:\」,再輸入tree就可以顯示該目錄(資料夾)的樹狀結構
[雷射雕刻] 聖誕樹
應景一下
使用雷射切割機,切割5MM的透明壓克力,組裝起來剛好是一棵聖誕樹。
聖誕樹檔案:https://www.thingiverse.com/thing:3230585
底座用3D列印,再加上 5MM 的 RGB LED 燈,用洞洞板純手工焊接,不是現成的電路板。
[Raspberry Pi] 用Raspberry Pi打造智能居家監控系統
https://www.rs-online.com/designspark/raspberry-pi-3-cn
根據以上的教學做出來的,或許之後可以再增加其他模組(例如:PM2.5的偵測模組),讓這個監控系統更完整。
看到這篇教學文時,所需要的零件,剛好手邊都有,我又正好在學 python ,所以就想說來試試看。不過教學文中是用 Pi3 ,我是用 Pi2 ,使用起來感覺沒什麼差別。
花最多時間的是「從官網上下載Raspbian作業系統」,原本想說放著讓他下載,等下載的預估時間到時,再來做後面的步驟,可以先做其他的事情,但是可能是檔案太大,下載失敗了好幾次,都是我在下載預估時間後才發現,所以花了二天才下載到完整的檔案。
[Arduino] 溫溼度感測器
使用 Arduino 連接溫濕度偵測器,可以偵測到空氣中的溫濕度,用來判斷溫溼度是否異常。例如:溫度過高時,是否有火警發生?濕度過高時,是否下雨導致雨水潑進室內?
接線部分
Adruino | 溫溼度感測器 | 蜂鳴器 |
D2 | DATA | |
VCC | VCC | |
GND | GND | |
D13 | 長腳 | |
GND | 短腳 |
#include <Wire.h> // <>改為半形,用全形網頁才能顯示,但是 arduino ide 編譯不過 #include "DHT.h" // DHT #define DHTTYPE DHT11 // DHT 11 //#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321 //#define DHTTYPE DHT21 // DHT 21 (AM2301) int DHTpin = 2; DHT dht(DHTpin, DHTTYPE); // 蜂鳴器 int BeepPin = 13; void setup() { Serial.begin(9600); dht.begin(); pinMode(BeepPin, OUTPUT); } void loop() { int h = dht.readHumidity(); int t = dht.readTemperature(); float f = dht.readTemperature(true); if (isnan(h) || isnan(t) || isnan(f)) { Serial.println("Failed to read from DHT sensor!"); return; } float hif = dht.computeHeatIndex(f, h); float hic = dht.computeHeatIndex(t, h, false); Serial.print("Humidity: "); Serial.print(h); Serial.print("% Temperature: "); Serial.print(t); Serial.print("°C "); if(h >= 50 || t >= 33) // 濕度達到或超過50%,溫度達到或超過33°C,則蜂鳴器發出聲音 { alarmBeep(BeepPin); } delay(2000); } // 聲響 void alarmBeep(int pin) { tone(pin, 1000, 1000); delay(2000); }
可由 Arduino 的序列埠監控視窗看到溫溼度的數據變化。
[Arduino] HC-05 AT mode 改名字
將以下程式上傳到 arduino ,操作步驟在程式中的註解說明裡
/* * arduino 和 hc-05 都斷電,hc-05 的 key(或 EN) 腳位接 arduino VCC(5V),arduino 接電後,hc-05 接電 * AT+NAME=識別名稱 * * HC-05進入TA COMMAND.若遇有按鈕,則步驟如下 1: 先拔掉 Arduino 的 USB 線,也拔掉 HC-05 VCC 和 Arduino 5V 相連的這條線。並將HC-05的KEY引腳接至Arduino 板上的3.3或5V電位. 2: 將 Arduino 的 USB 線插入電腦。 3: 先按下HC-05板上的按鈕不放.然行將HC-05 VCC 和 Arduino 5V 相連, 約1秒左右放掉HC-05板上的按鈕,此時HC-05板上的燈約2秒鐘閃一次.就代表進入AT Command 模式了. 4: 開啟序列埠監控視窗,在監控視窗才能輸入 AT Command */ #include <SoftwareSerial.h> // <>改為半形,用全形網頁才能顯示,但是 arduino ide 編譯不過 // Pin2為RX,接HC05的TXD // Pin3為TX,接HC05的RXD SoftwareSerial BT(2, 3); char val; // 儲存接收資料的變數 void setup() { pinMode(9, OUTPUT); // this pin will pull the HC-05 pin 34 (key pin) HIGH to switch module to AT mode digitalWrite(9, HIGH); Serial.begin(9600); // 與電腦序列埠連線 Serial.println("BT is ready!"); // 設定藍牙模組的連線速率 // 如果是HC-05,請改成38400。如果是HC-06,請改成9600 BT.begin(38400); } void loop() { // 若收到「序列埠監控視窗」的資料,則送到藍牙模組 if (Serial.available()) { val = Serial.read(); BT.print(val); } // 若收到藍牙模組的資料,則送到「序列埠監控視窗」 if (BT.available()) { val = BT.read(); Serial.print(val); } }
AT command 如下:(只要是改資料,監控視窗都會回覆「OK」或「ERROR」,查詢的話,則會回覆目前 HC-05 的資料)
1. 改名字
HC-05:
AT+NAME=123456
HC-06:(我手邊沒有HC-06,不知道這樣的 command 是否正確)
AT+NAME123456
2. 查詢名字
AT+NAME?
3. 改鮑率
AT+UART=9600,0,0
4. 查鮑率
AT+UART?
[Arduino] 土壤溼度感測器
使用 Arduino 連接土壤溼度偵測器,可以偵測到盆栽中土壤的濕度,用來判斷是否需要澆水,避免土壤太乾又沒澆水,而導致盆栽乾枯,或是土壤太濕又澆水,導致盆栽爛根。
接線部分
arduino | 土壤溼度感測器 |
A2 | A0 |
VCC | VCC |
GND | GND |
程式:
const int sensorPin = A2; void setup() { Serial.begin(9600); } void loop() { int v = analogRead(sensorPin); // 取得偵測器數據 Serial.println(v); delay(1000); }
土壤溼度偵測器在空氣中無法偵測濕度,所以必須將他插入盆栽中,或是水中,即可獲得濕度數據,由 Arduino 的序列埠監控視窗可以看到數據的變化。
[雷射雕刻] 貼紙-撐出香港 台灣守衛
利用小畫家3D程式,將「林國慶翻轉文字」的「撐出香港(台灣守衛)」圖檔去背後,再用雷雕機雕刻出文字,原本想只雕出字,但是失敗了。轉而試看看是否可以把字雕空,留下紅色的貼紙部分,還是失敗。最後只能刮掉比較上層紅色的部分,沒想到卻變成好像塗了一層金色漆在上面,不同的感覺,也不錯。
圖檔來源:
https://www.facebook.com/…/a.155480175266…/440986130049709/…
[雷射雕刻] 衣服轉印-做個獨立思考的人
A4大小的布料轉印紙
用雷射雕刻機器,將「做個獨立思考的人」雕刻出來,去除多餘的部分,剩下需要的字體與透明膜
用熨斗熨燙到衣服上面
[生活日常] 該以解決客戶的問題為主?還是該以收費為主?
甲客戶的系統已經上線將近10年,日前老闆打電話給我,說想增加一個功能,問我可不可做到?
電話中回覆:可以。費用評估後再報價。
掛了電話突然想到,那個功能有現成的免費小軟體就可以做到,不一定要增加系統的功能。
於是我回了訊息給他,告知他軟體名稱及大略的操作方法。
所以這筆交易就沒有收費,但是客戶的問題解決了。
(需求功能是要將報價單匯出成PDF或WORD檔,最後使用的小軟體是doPDF)
乙客戶公司的網站已經用了20年,之前不是我處理的,只是現在需要修改內容,才找上我。
經由客戶提供的資料,再加上我查了相關資料後,得知他們的網站空間費用是我目前使用的3~4倍,(當然還有評估其他的部分,不是單只有價格)
於是跟客戶說了這情形,其實我可以當不知道,讓他們繼續使用原來的網站空間,對我沒有影響,客戶多支付的費用對他們影響也不大。
可是我還是選擇告知,讓他們自己評估是否更換。
有更換,對我沒影響,我沒有額外增加收費(或收入,請客戶自行購買,我只是提供網站空間的廠商資料),
沒有更換,對我也沒影響,網站空間不在我的收費範圍。
但是以我對客戶老闆的了解,他們一定會更換。
丙客戶公司同時使用好幾套系統,其中一套是我開發的,
日前聯絡我A系統需要B系統的資料,是否可以透過我開發的系統提供資料?
我回覆了,「可以」。但是後面又加了幾句,「既然是A系統需要B系統的資料,為什麼不A系統直接處理就好?」
後來往返了幾封信件後,才知道,原來開發A系統的人不知道他可以直接處理,而客戶負責聯繫的人,也不清楚可以這樣做。
於是我把處理方式告知開發A系統的人,這樣客戶的問題解決了,我又沒有收到費用了。(不過還好還有我開發的系統的維護費)
甲乙兩客戶為傳統產業,可以理解他們的資訊或是了解這方面的人員相對較少,只能聽從相對他們來說較專業的人的做法。
這也是為什麼,我願意花一點時間(或是說提供一點我的專業知識),協助他們解決問題。
至於該以解決客戶的問題為主?還是該以收費為主?
當然最好是可以兩者兼具,如果只可以選擇一個,我想我選擇的是解決客戶的問題為主。(當然不是所有都這樣做,如果都這樣做,可能就只能吃泡麵了)
有人認為我提供了服務(或專業知識)就應該(可以)收費,不然客戶一直要求,事情會做不完。
當然我也會視情況而定,不是通通免費的啊!不然我就連泡麵都沒得吃了。
不過還是要備註一下,我是自己接案,不是上班族。如果是上班族要老闆也認同這樣的想法,不然可能會回家吃自己。
[生活日常] 電影-返校
「返校」是我印象中,第一部上映第一天我就進電影院看的電影,沒有看過預告片,知道上映就去看了,一開始感覺像在看恐怖片。
「返校」是描述台灣之前發生的「白色恐怖」(時期:1949/5/20~1991/5/22),感覺距離我們很遠又很近,遠的是後期時我還是中學生(跟片中的主角差不多的年紀,但已經沒有那麼的恐怖了),近的是目前香港正在發生,電視或網路上都可以看到消息。
我是抱著看台灣發生的歷史的心態去看這部電影,這是在台灣真實發生過的事,在那樣的時空背景下,人們的無奈。
片中主角說:不過就看幾本書而已,有這麼嚴重嗎?
我想思想的改造有一部份是因為書本(過去是書本,現在是媒體),所以當政者才會禁書,而現在禁影片上映。