DS485 - Concentratore per sensori di temperature DS18B20

Il DS485 è una scheda Linux embedded in grado di raccogliere dati da un gruppo di sensori di temperatura digitali 1-wire DS18B20 e inviarne i dati su bus RS485, WiFi o LAN. La scheda è disegnata sul modulo SOM Arietta G25.

I sensori DS18B20 sensori sono disponibili in commercio già incapsulati in una protezione in acciaio e dotati di cavo da 1 mt. Per estenderne la portata il concentratore DS485 raccoglie i dati da un gruppo di sensori e li ritrasmette in RS485 fino a diverse centinaia di metri. In alternativa può essere usata una connessione LAN o WiFi aggiungendo periferiche sulle porte USB.

La scheda può fare anche funzioni di webcam, elaborazione delle letture, web server, etc, etc.

Un piccolo display LCD retroilluminato da 16x2 righe e quattro pulsanti sono disponibili per le operazioni di configurazione della scheda.

Architettura interna

Caratteristiche

  • Scheda ARM9 a 400MHz con 256MB di memoria Arietta G25
  • 3 porte USB host
  • 1 bus RS485 non optoisolato con morsetto in e out
  • 4 bus 1-wire indipendenti su morsetti a tre viti
  • Display LCD alfanumerico retroilluminato 16x2 Winstar
  • 4 pulsanti su PCB
  • Alimentazione di ingresso 9-24 volt DC (vedi DC/DC converter EPS con morsetti in e out
  • Range di temperatura esteso -40 +85 (ad eccezione dell'LCD)

Case

La scheda è a frame aperto e disegnata per essere montata all'interno di una scatola di derivazione Gewiss GW 44 207

Preview

La scheda è in fase di progettazione. Questo è un primo preview.

Schema elettrico

Pinout

Arietta G25

Pin utilizzati su Arietta G25 e pin disponibili per eventuali estensioni

| Pinout Arietta | Pin Atmel   | Uso su scheda | Segnali liberi |
|----------------|-------------|---------------|----------------|
| J4.1           | 5VDC in     | 5VDC          |                |
| J4.2           |             |               | VBAT           |
| J4.3           |             |               | NRST           |
| J4.4           | USB A D-    | USB Host A D- |                |
| J4.5           | 3V3 out     |               | 3V3 out        | 
| J4.6           | USB A D+    | USB Host A D+ |                |
| J4.7           | PA23        |               | SPI1 CK        |    
| J4.8           | PA22        |               | SPI1 MOSI      |     
| J4.9           | GND         | GND           |                |
| J4.10          | PA21        |               | SPI1 MISO      |
| J4.11          | PA24        | 1-WIRE 1      |                |
| J4.12          | PA31        | LCD SCL I2C   |                |
| J4.13          | PA24        | 1-WIRE 2      |                |
| J4.14          | PA30        | LCD SDA I2C   |                |
| J4.15          | PA26        | 1-WIRE 3      |                | 
| J4.16          | USB B D+    | USB Host B D+ |                |
| J4.17          | PA27        | 1-WIRE 4      |                |
| J4.18          | USB B D-    | USB B D-      |                |
| J4.19          | PA28        | LCD backlight |                |
| J4.20          | USB C D-    | USB C D-      |                |
| J4.21          | PA29        |               | PA29           |
| J4.22          | USB C D+    | USB C D+      |                |
| J4.23          | PA0         |               | SPI1 CS1       |   
| J4.24          | PA1         |               |                |
| J4.25          | PA8         |               | SPI1 CS0       |
| J4.26          | PA7         |               | PA7            |   
| J4.27          | PA6         | RXD1 < RS485  |                |
| J4.28          | PA5         | TXD1 > RS485  |                |
| J4.29          | PC28        | Relay         |                |
| J4.30          | PC27        | DE   > RS485  |                |
| J4.31          | PC4         | USB On        |                |
| J4.32          | PC31        |               | PC31           |  
| J4.33          | PC3         | Switch OK     |                | 
| J4.34          | PB11        |               | ADC0 or PWM0   |  
| J4.35          | PC2         | Switch >      |                |
| J4.36          | PB12        |               | ADC1 or PWM1   |  
| J4.37          | PC1         | Switch <      |                |
| J4.38          | PB13        |               | ADC2 or PWM2   |  
| J4.39          | PC0         | Switch ESC    |                |
| J4.40          | PB14        |               | ADC3 or PWM3   |  

Pinout morsetti a vite

| J1 (SX) | J3 (DX) |
|---------|---------|
|    +24V |     GND |
|     GND |     1Wa |
|       A |     3V3 |
|       B |     GND |
|    +24V |     1Wb |
|     GND |     3V3 |
|       A |     GND |
|       B |     1Wc |
|       - |     3V3 |
|      NO |     GND |
|       C |     1Wd |
|      NC |     3V3 |

Arietta debug port

3 TXD
4 RXD
6 GND

Risultato test

OK - EPS
OK - Power supply 3V3
OK - Arietta
OK - Relay & led
OK - Pushbuttons
OK - LCD backlight 
     USB power mosfet
OK - USB A
     USB B
     USB C

Sergio Tanzilli (Autore - Progettista hw & sw - Imprenditore - Musicista dilettante, classe 1964)
Fondatore di Area SX srl, Acme Systems srl e del TanzoLab, si occupa dal 1974 di elettronica digitale, dal 1978 di microprocessori, dal 1992 di microcontroller, dal 1995 di Linux e pubblicazioni su Web, dal 2005 di progettazione, produzione e commercializzazione di schede Linux Embedded.
http://www.tanzilli.com - http://www.acmesystems.it - https://github.com/tanzilli - sergio@tanzilli.com

Guido Ottaviani (Author/Designer/Developer for electronics-firmware-robotics)
He deals with electronic design and embedded system firmware for Robotics and industrial and civil applications, as well as technical disclosure on the internet.
http://www.guiott.com - https://github.com/guiott - guido@guiott.com