這個感測器模組整合計畫,是將目前的一些模組與Mega2560做整合,
想要解決的問題為:
(1) 感測器模組與Arduino Mega2560都是用線材來連接,連接多種感測器時,線會變得凌亂,線是插拔式的,對有些通訊傳輸,如SPI或I2C容易造成不穩定。
(2) Mega2560的電源與接口不夠多,目前只有5V, 3.3V, GND也只有三個,如果接超過兩個上的模組,在接線上就需要接電路裝置,如萬用版。
我計畫Layout一個PCB版,目前預計可以接以下8組硬體,可能也會保留BLE與WIFI Module接腳:
1. |
Arduino MEGA2560 R3 開發板 (支援LabVIEW控制) |
2. |
RGB 全彩LED發光二極體模組 |
3. |
AOSONG奧松 DHT11/DHT-11 數位溫濕度感測器 |
4. |
HC-SR501人體紅外線感應模組 |
5. |
SD卡讀寫模組 |
6. |
6軸 InvenSense MPU-6050 MPU6050模組(三軸陀螺儀,三軸加速度) |
7. |
0.96寸 OLED模組 |
8. |
HC-06藍芽模組 |
Item 1 Mega2560需要用到的功能:
-串列傳輸(硬體)Serial: 0 (RX) and 1 (TX); Serial 1: 19 (RX) and 18 (TX); Serial 2: 17 (RX) and 16 (TX); Serial 3: 15 (RX) and 14 (TX).
Used to receive (RX) and transmit (TX) TTL serial data. Pins 0 and 1 are also connected to the corresponding pins of the ATmega16U2 USB-to-TTL Serial chip. --> 使用於SD card, 藍芽模組,ESP8266 (WIFI模組)
-PWM: 2 to 13 and 44 to 46.
Provide 8-bit PWM output with the analogWrite() function. --> 使用於RGB LED
-SPI: 50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS). --> 使用於OLED
-TWI: 20 (SDA) and 21 (SCL).
Support TWI communication using the Wire library. --> 使用於MPU6050模組
-SoftwareSerial: (http://arduino.cc/en/Reference/softwareSerial)
Not all pins on the Mega and Mega 2560 support change interrupts, so only the following can be used for RX: 10, 11, 12, 13, 14, 15, 50, 51, 52, 53, A8 (62), A9 (63), A10 (64), A11 (65), A12 (66), A13 (67), A14 (68), A15 (69). --> 使用於SD card, 藍芽模組,ESP8266 (WIFI模組)
在腳位的定義上,item 2~8接到item 1 (Mega2560),分別為:
Item 2. RGB 全彩LED發光二極體模組
Pin 1 (VDD) --> 3.3 V
Pin 2 (R) --> Dig 44
Pin 3 (B) --> Dig 45
Pin 3 (G) --> Dig 46
Item 3. AOSONG奧松 DHT11/DHT-11 數位溫濕度感測器
Pin 1 (VDD) --> 3.3 V
Pin 2 (Data) --> Dig 48
pin 3 (NA) --> Not connect
pin 4 (GND) --> GND
Item 4. HC-SR501人體紅外線感應模組
Pin 1 (VDD) --> 5V
Pin 2 (Data) --> Dig 31
Pin 3 (GND) --> GND
Item 5. SD卡讀寫模組
Pin 1 (GND) --> GND
Pin 2 (3.3V) --> 3.3V (Not connect)
Pin 3 (5V) --> 5V
Pin 4 (SDCS) -->Dig 53
Pin 5 (MOSI) -->Dig 51
Pin 6 (SCK) -->Dig 52
Pin 7 (MISO) -->Dig 50
Pin 8 (GND) -->GND
Item 6. 6軸 InvenSense MPU-6050 MPU6050模組(三軸陀螺儀,三軸加速度)
Pin 1 (VCC) --> 5V
Pin 2 (GND) --> GND
Pin 3 (SCL) --> Dig 21
Pin 4 (SDA) --> Dig 20
Pin 5 (XDA) --> Not connect
Pin 6 (XCL) --> Not connect
Pin 7 (AD0) --> Not connect
Pin 8 (Int) --> Dig 2
Item7.0.96寸 OLED模組
Pin 1 (GND) --> GND
Pin 2 (VCC) --> 3.3 or 5V (tested)
Pin 3 (D0/CLK) --> Dig 10
Pin 4 (D1/MOSI) --> Dig 9
Pin 5 (RES) --> Dig 13
Pin 6 (DC) --> Dig 11
Pin 7 (CS) --> Dig 12
Item8. HC-06藍芽模組
Pin 1 (VCC) --> 3.3V
Pin 2 (GND) --> GND
pin 3 (TXD) --> Dig 10 (RX)
pin 4 (RXD) --> Dig 11 (TX)
********************
Item 9. BLE Module (預留)
Pin 1 (VCC) --> 3.3V
Pin 2 (GND) --> GND
pin 3 (TXD) --> Dig 19 (RX1)
pin 4 (RXD) --> Dig 18 (TX1)
Item 10. ESP8266 WIFI Module (預留)
Pin 1 (VCC) --> 3.3V
Pin 2 (GND) --> GND
Pin 3 (TXD) --> Dig 12 (RX)
Pin 4 (RXD) --> Dig 3 (TX)
Pin 5 (CH_PD) --> 3.3V
Pin 6 (RESET)--> 3.3V
**********電路繪製與印製 (Schematic and PCB layout) **********
接下來,將進行PCB Layout,我打算用EAGLE來製作這一次的PCB版,
先在原理圖畫好與定義好這些模組的腳位,
然後將這些腳位與Mega2560上的腳位作連結,
接著是印製版腳位拉線到感測器模組的腳位,定義模組在電路板中擺放的位置,黑色為Mega 2560的PCB版框,藍色為sensor 模組的PCB版框,
然後Layout 接線 ,手動和自動Layout
利用CAM處理器產生Gerber檔,在gerberv中檢視檔案,
花了許多時間學習Eagle PCB這套layout軟體,準備送出製作PCB。