2018年11月17日 星期六

iPAS 物聯網應用工程師考試



0.) 關於iPAS 物聯網應用工程師考試簡介



1.) IoT 技術架構簡介
    -- IoT 架構: 感知層,網路層,應用層 
-- Cloud computing: IaaS,PaaS,SaaS. BaaS
   -- 物聯網規格標準四大陣營

--Cloud Platform: MediaTek Cloud Sandbox, ARM mbed Cloud,WISE-Paas,Xively, ThingSpeak,..
    -- ARM mbed Connector
     --  ARM mbed OS:
     --  物聯網應用層通訊協定標準比較 CoAP vs MQTT                     
   MQTT Lab:
 
    --IoT Gateway (WSN,IEEE 802.15.4,Zigbee)
   
    -- LPWAN 長距離低功耗通信技術 : NB-IoT vs LoRa

2) 物聯網系統與應用 
  -- 開源硬體介紹
     MPU v.s. MPU  ==> Raspberry Pi v.s. Arduino
  -- 開源軟體規劃與授權規範
      GPL,LGPL,Apache,CC
  -- I/O 通訊與控制方式基礎
     Analog v.s. Digital
     UART:https://www.slideshare.net/itembedded/raspberry-pi-pm25-dust-sensor
     SPI: https://www.slideshare.net/itembedded/spi-interface
     I2C: https://www.slideshare.net/itembedded/i2c-eeprom
     https://www.slideshare.net/itembedded/raspberry-pi-linux-i2c-driver
 
3.)  Quick Overview
  -- 考試準備  https://www.slideshare.net/itembedded/2018-ipas-review
  -- NoSQL-MongoDB https://www.slideshare.net/itembedded/nosqlmongodb-103537729
  -- RFID Project: https://www.slideshare.net/itembedded/rfid-15614650

4.) Youtube Demo:

ARM mbed 物聯網平台實戰(課程節錄)
https://youtu.be/sslJLgOPfCM



ARM mbed Cloud 平台架構簡介
https://youtu.be/GrMD8Me5qg0




IoT Gateway Demo
https://youtu.be/tZFMY5UIG6s



智慧POS機-人臉自動結帳
https://youtu.be/DHTQCF6t1Jw



AIoT智能居家燈控系統
https://youtu.be/Dcz28sASv0w



Control your Raspberry Pi using Line Bot
https://youtu.be/WL2RrYrGB1Q



Iot自動販賣機
https://youtu.be/9jxIuyiIXko



2018年11月7日 星期三

安裝MinGW - Minimalist GNU for Windows




對於不熟悉Linux,又想要用GNU gcc 編譯你的 C code或g++編譯你的C++ code, 你可以在windows上安裝minGW, 使得你的windows也有最小的GNU程式開發工具.


MinGW - Minimalist GNU for Windows

 1.) MinGW 下載 並在windows下進行安裝

MinGW: A native Windows port of the GNU Compiler Collection (GCC), with freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All of MinGW's software will execute on the 64bit Windows platforms.

安裝後, 在windows上將MinGW的執行檔路徑 加入到[Path環境變數]中, 使得gcc這個指令可以被執行。Path 是一個系統變數,可讓您的作業系統從指令行或終端機視窗中尋找所需的可執行檔。

在桌面的電腦圖示按一下滑鼠右鍵 從內容功能表中選擇內容 按一下進階系統設定連結, 可以看到如下的畫面, 就可以修改環境變數



      


在Path 這個變數, 將其變數值加入 C:\MinGW\bin  (此路徑為MinGW你安裝工具的路徑)





此時你可以開啓windows 命令視窗(cmd.exe) , 執行gcc -v , 會顯示gcc版本, 若能正確顯示, 就表示Path已正確指定到gcc 路徑.

2018年11月3日 星期六

[Linux 程式設計] IPC--Message Queue


Linux 程式設計課堂CH8裡的msg1.c跟msg2.c都會出現如下問題
請問一下為什麼msgget會產生失敗??







fprintf(stderr, "msgget failed with error: %d\n", errno);  

errno: 88 是 #define ENOTSOCK 88 /* Socket operation on non-socket */

這錯誤是核心無法建立Message Queue



解決方式:  讓核心支援Message Queue

cd ~/linux-rpi-4.4.y ;  make menuconfig


 ( toolcahin 路徑要設定好且要有 ncurse.h 才行!)     sudo apt-get install libncurses5-dev

[General Setup] --> [POSIX Message Queues] 編進核心內 [*] 或編成核心模組 [M]









更多核心編譯及模組使用, 可參考 嵌入式Linux設計開發 


按講師提供的Linux程式範例, 執行的正常畫面像是這樣,