底下是本程式專案的檔案結構,其中的Procfile是Heroku平台環境的應用程式(也就是“dyno”)設定檔,其中只包含一行敘述:“web: node index.js”代表指定網站伺服器以node服務執行index.js。本範例檔包含ejs樣板,但下一篇的程式才會用到。
LINE Bot聊天機器人程式開發教學(三):建立Node.js版的Echo Bot
在LINE頻道的設定畫面中,我們必須替LINE頻道設定接收LINE訊息的自訂程式(也就是LINE 機器人程式)網址,這個網址稱為Webhook(註:hook代表「掛勾」)。假設筆者把LINE訊息處理程式放在swf.com.tw網站的linewebhook路徑,那麼,每當有人發送訊息給我的LINE機器人,LINE公司的伺服器將以底下的HTTP POST請求格式,將訊息發送給我的網站伺服器:
LINE Bot聊天機器人程式開發教學(二):註冊與設定Heroku平台應用程式
撰寫Node.js程式之前,先替網站程式找個安頓之處,本文採用Heroku雲端應用程式平台。「雲端應用程式平台」類似出租套房,地主蓋了樓房,將它分隔成不同尺寸的套房,每個套房都有獨立的水電和網路等基礎設施,套房裡面住著不同的房客。
LINE Bot聊天機器人程式開發教學(一):建立頻道
聊天機器人程式的處理架構如下,LINE公司的訊息伺服器(Messaging Server)負責接收與回應用戶端的訊息,並且管理LINE應用程式的權限。當LINE伺服器收到用戶端的訊息時,它會把訊息轉送給我們開發的「聊天」機器人程式,而此程式碼存放在我們自己的網站伺服器。
MQTT教學(九):使用ESP8266上傳資料到ThingSpeak MQTT伺服器
延續上一篇文章的說明,本文將使用ESP8266控制板(如:NodeMCU或Wemos D1 mini),經由Wi-Fi網路和MQTT協定傳送DHT11的溫濕度值到ThingSpeak雲端平台。底下是本文的硬體接線:
MQTT教學(八):使用MQTTlens上傳資料到ThingSpeak的MQTT伺服器
本文將使用MQTTlens,測試把溫濕度資料上傳到雲端IoT平台。雲端IoT平台用於儲存、管理、分享和處理各種物聯網裝置上傳的數據。例如,從各地上傳空氣品質感測器的GPS座標地點與採集到的數據,然後結合線上地圖,描繪即時或者過往的空氣品質變化。
聲音檢測∕聲音放大器(二):計算聲波峰對峰值(振幅大小)的程式
loop()函式當中的while迴圈,用於在設定的時間間隔(10ms)內,不停地讀取類比A0(聲音)值,並且比較出最低和最高峰值。以讀取下圖左、灰底的訊號為例,一開始sigMin變數刻意被設定成很高的值(2000),因此第1個類比輸入值將成為「最低峰值」;sigMax變數也刻意被設定成0,所以第2個類比輸入值將成為「最高峰值」:
聲音檢測∕聲音放大器(一):模組介紹與自製LM386麥克風聲音放大器
市面上的「聲音放大器」模組,大多是採用LM386電路的「全波」放大器。模組的外型跟「聲音檢測器」很像,購買之前請確認模組上面的IC型號,不是LM393。當然,我們也可以自己買零件從頭組裝。
TB6612FNG直流馬達驅動∕控制板(二):運作效率以及快速切換二極體補充說明
L298N技術文件第3頁的電氣特性表(Electrical Characteristics)的VCEsat欄位提到,電晶體飽和(完全導通)時,C和E腳之間的電壓降,典型值分別是1.35V和1.2V(IC為1A時):
TB6612FNG直流馬達驅動∕控制板(一):簡介、程式庫與取代L298N模組
TB6612FNG是東芝生產的馬達驅動與控制IC,內部包含兩組H橋式電路,可驅動和控制兩個小型直流馬達,或者一個雙極性步進馬達。跟L298N比較,從外觀看來,TB6612FNG控制板明顯嬌小,而且沒有散熱片,這兩個馬達控制板的主要規格比較如下:
《3DS神奇寶貝Tretta實驗室》掃描器拆解與改造
之前我以為神奇寶貝電玩機台採用RFID/NFC之類的無線通訊技術,來讀取卡匣(以前的機台卡匣是圓形的,現在是方形的)資料。可是,只有新款的NEW 3DS和NEW 3DSLL主機才內建NFC讀卡機,除非《神奇寶貝Tretta實驗室》的掃描器有內建NFC,否則Tretta卡匣就不是用NFC技術了。
nRF24L01無線收發器模組與Arduino通訊實驗(三):降低電源雜訊干擾
你可以嘗試在nRF24L01無線收發器模組焊接電容,電容的耐電壓值請選擇6.3V或更高,為了有效抑制電源的雜訊,電容應該盡量靠近IC的電源腳: