Login Login
MORE

WIDGETS

Widgets

Wanted articles
Who is online?
Article tools

Difference between revisions of "Domotica Device Arduino"

From Aino Wiki

Jump to: navigation, search
(Tips)
((Compatibile) MEGA2560 R3)
 
Line 71: Line 71:
 
==GIGA==
 
==GIGA==
 
===(Compatibile) MEGA2560 R3===
 
===(Compatibile) MEGA2560 R3===
[[File:Arduino_Comp_MEGA2560_R3_01.jpg|none|650x630px]]
+
[[File:Arduino_Comp_MEGA2560_R3_01.jpg|none|650x630px]]Scheda compatibile MEGA2560 R3 (CH340), marca VANCOM, dichiarata come compatibile con Arduino ATmega2560-16AU, Archiviazione Espandibile da 32GB/128GB/64GB/16GB/8GB tramite Slot per Scheda TF, Alimentazione USB-C Power Delivery, Velocità Orologio 16Mhz, RAM 16Mhz, Memoria Flash 16Mhz.
Scheda compatibile MEGA2560 R3 (CH340), marca VANCOM, dichiarata come compatibile con Arduino ATmega2560-16AU, Archiviazione Espandibile da 32GB/128GB/64GB/16GB/8GB tramite Slot per Scheda TF, Alimentazione USB-C Power Delivery, Velocità Orologio 16Mhz, RAM 16Mhz, Memoria Flash 16Mhz.
+
 
 +
{| class="wikitable"
 +
|-
 +
!|Caratteristica
 +
!|Valore
 +
|-
 +
||Chip microcontrollore
 +
||ATmega2560
 +
|-
 +
||Frequenzqa operativa
 +
||16 MHz
 +
|-
 +
||Memoria flash
 +
||256 KByte
 +
|-
 +
||SRAM
 +
||8 KByte
 +
|-
 +
||EEPROM
 +
||4 KByte
 +
|-
 +
||Alimentazione e I/O
 +
||USB-C 5V
 +
|-
 +
||Alimentazione esterna
 +
||7 - 12 V al pin VIN
 +
|}
  
 
=Installazione IDE di sviluppo=
 
=Installazione IDE di sviluppo=

Latest revision as of 23:27, 3 December 2025

Sito ufficiale
Il materiale qui raccolto viene da molte fonti ma soprattutto dal libro "Il manuale di Arduino" di Paolo Aliverti.

Doc

Info

Uno

Uno R3

Arduino R3.jpg

Il microcontrollore di Arduino Uno R3 è ATmega328 creato da Atmel con la famiglia megaAVR (precedentemente era della Microchip Technology acquisita da Atmel nel 2016).

Uno R4

Arduino Rev4 WiFi.jpg

Doc ufficiale:

Caratteristiche

  • Può esser alimentato da USB mediante una tensione da 5V o da una presa a jack da 5mm (che è nell'angolo opposto alla presa USB) con una tensione che può andare da 5V fino a 20V (anche se è consigliabile non superare i 12V) sarà poi ridotta a 5V da un regolatore interno. NOTA con Arduino Uno R4 invece, può essere alimentato fino a 24V sia daljack che dal pin VIN che sono entrambe collegati.
  • Massimo carico di corrente: 40mA / 50mA
  • Massima tensione supportata dai pin di Arduino è 5V. La tensione fornita da Arduino non è mai 5V ma qualcosa di meno 4.88mV.
  • Arduiono Uno legge i segnali analogici ma non può produrli ma su alcune schede come Arduino Zero, Arduiono Due e quelle della famiglia MKR (progettati per IoT, internet delle cose) è possibile intervenire sui "passi" utilizzabili usando l'istruzione AnalogWrite(). Arduino UNO R4 può usare il pin A0 come uscita analogica.
  • i pin di arduino possono rilevare impulsi che vanno dai 10 microsecondi a quasi 3 minuti.
  • Arduino non è in grado di restituire data ed ora ma sarà possibile collegare un ulteriore chip chiamato RTC che funziona da orologio grazie ad una batteria tampone.
  • il tasto Reset riavvia Arduino nel senso che è come se Arduino fosse appena acceso.

I PIN

  • i pin vanno sempre dichiarati nella sezione setup dello sketch.
  • il limite di corrente dei pin e di qualche decina di milliampere e per questo motivo NON è possibile collegarvi un relè o un motore (es. si potrenno usere dei transistor).
  • il pin Vin (il primo del gruppo Power) è collegato direttamente all'ingresso di alimentazionee si può utilizzare per prelevare una tensione che può esser più elevata dei 5V della USB nel caso Arduino sia alimentato mediante la presa a jack.
  • il pin AREF può leggere tensioni comprese tra 0 e 5V che trasformerà in un numero tra 0 e 1023. Questo valore servirà opportunamente nell'elaborazione eseguita dallo sketch.
  • Sull'Arduino R4 c'è un nuovo pin, VRTC, esso è usato per fornire corrente al scopo di mantenere l'orario attivo, infatti, si può collegare una batteria da 1.5V a 3.3V collegando il positivo sul VRTC ed il negativo sul pin accanto GND. Accanto al GND c'è il pin OFFche può esser usato per "spegnere" la scheda, basterà mandarlo in corto col pin GND; questo NON funziona in caso di alimentazione da USB ma solo usando il pin VIN o il jack di alimentazione.

Per essere utilizzati vanno dichiarati nella sezione setup() delo skech.

Pin digitali
Sulla DX della scheda e che vanno da 0 a 13, sono pin GPIO (General Purpose Input\Output) hanno la funzione di assumere lo stato 0 (tensione a 0V = LOW) o 1 (tensione a 5V = HIGH). Alcuni hanno accanto alla label una tilde ~ sono quelli PWM (Pulse with modulation) ovvero che possono assumere alternativamente 0V o 5V in un intervallo di tempo fisso a piacere.

  • i pin 0 e 1 sono condivisi con la porta seriale collegata alla USB e quindi se sono utilizzati potrebbero interferire con l'upload dello skech.
  • il pin 13 ha in più la funzione di accendere il led L di Arduino quando è in stato HIGH (tensione a 5V).

Pin analogici
Sulla SX della scheda e che vanno da A0 a A5.
Nelle comunicazioni I2C, il pin A0 coincide col pin SDA (dati seriali) ed il pin A1 col SCL (clock seriale).
NOTA I pin da A0 a A5 possono essere usati in caso di necessità come pin digitali ma con i numeri che vanno da 14 a 19. Pertanto come nei casi dei pin digitali avremo:

void setup() {
   pinMode(16, INPUT); //Per poter usare il pin analogico A3 come il digitale 16 in modalità INPUT
}

Nano

Nano 33 IoT

Arduino Nano 33 IoT.jpg
Scheda commerciale qui
  • Usa solo tensioni a 3.3V

Nano

Il clone è anche chiamato Ardiono mini ATmega328 qui

Arduino Nano.jpg

GIGA

(Compatibile) MEGA2560 R3

Arduino Comp MEGA2560 R3 01.jpg
Scheda compatibile MEGA2560 R3 (CH340), marca VANCOM, dichiarata come compatibile con Arduino ATmega2560-16AU, Archiviazione Espandibile da 32GB/128GB/64GB/16GB/8GB tramite Slot per Scheda TF, Alimentazione USB-C Power Delivery, Velocità Orologio 16Mhz, RAM 16Mhz, Memoria Flash 16Mhz.
Caratteristica Valore
Chip microcontrollore ATmega2560
Frequenzqa operativa 16 MHz
Memoria flash 256 KByte
SRAM 8 KByte
EEPROM 4 KByte
Alimentazione e I/O USB-C 5V
Alimentazione esterna 7 - 12 V al pin VIN

Installazione IDE di sviluppo

L'amiente di sviluppo naturale è "Arduino IDE" ma ben presto ci si accorgerà che è limitante rispetto ad altri strumenti come Visual Studio Code corredato da apposite estensioni per gli sviluppi, vedere guida interna qui VS Code start. L'IDE standard può esser comunque usato per eventuali verifiche in ambiente "naturale" e casi particolari.

Configurazione

In Windows Arduino collegato alla porta USB è riconosciuto come porta COM, questo e verificabile lanciando "DEvice Manager".
ATTENZIONE dopo aver lanciato Arduino IDE di si dovrà associare:

  • il dispositivo da Tools\Board\Arduino AVR Boards\Arduino Uno (o altro della famiglia etc)
  • la porta COMx così come trovato impostato in Device Manager. Da Tools\Port scegliere la porta nuova spuntata in Device Manager.

Arduino Cloni

Le schede Arduino non ufficiali potrebbero non esser riconosciute da Windows e sarà necessario installare il driver per il chip CH340.
Per installare il driver:

  • Scaricare il pacchietto dal sito wchl-ic.com qui, eseguire il setup e cliccare su INSTALL.
  • Se il sistema operativo ha già i drivers necessari un popup lo notificherà
  • Riavviare il computer se necessario

Troubleshooting:

  • Verificare che il cavo USB sia corretto, eventualmente cambiare porta.
  • Installare il pacchetto "Arduino XXX platform" da Arduino IDE Board Manager.
  • Verificare Device Manager del sistema operativo se si aggiorna ed individuare la nuova porta (Deve essere tra le porte COM), potrebbe chiamarsi anche "USB Serial Device (COMx)"

Sketch

Sono i programmi di Arduino scritti in linguaggio C++ e ne seguono le regole. Di default ogni nuovo programma è preimpostato come segue:

void setup()
{
}
void loop()
{
}

Ogni programma DEVE avere le due procedure (o funzioni void): setup() e loop()!

Kit

Starter Kit

Componenti e datasheet Arduino uno R3
1 Projects Book (170 pages),
Arduino Uno,
USB cable,
Breadboard 400 points,
70Solid core jumper wires,
Easy-to-assemble wooden base,
9v battery snap,
1 Stranded jumper wires (black),
1 Stranded jumper wires (red),
Phototransistor,
Potentiometer 10kOhms,
10Pushbuttons,
Temperature sensor [TMP36],
Tilt sensor,
alphanumeric LCD (16x2 characters),
1LED (bright white),
LED (RGB),
LEDs (red),
LEDs (green),
LEDs (yellow),
LEDs (blue),
Small DC motor 6/9V,
1Small servo motor,
Piezo capsule [PKM22EPP-40<a data-tabindex-counter="1" data-tabindex-value="none" href="https://www.arduino.cc/documents/datasheets/piezoCapsule.pdf" target="_blank" rel="noreferrer noopener">],
H-bridge motor driver [L293D],
Optocouplers [4N35],
Mosfet transistors [IRF520],
Capacitors 100uF,
Diodes [1N4007],
Transparent gels (red, green, blue),
Male pins strip (40x1),
20 Resistors 220 Ohms,
5Resistors 560 Ohms,
Resistors 1 kOhms,
Resistors 4.7 kOhms,
20 Resistors 10 kOhms,
5Resistors 1 MOhms,
Resistors 10 MOhms 

Note

Differenze nella famiglia Adrduino

  • Su Arduino Uno R3 a differenza dei nuovi modelli è possibile accedere subito alla seriale mentre sui nuovi occorre attendere impostando dei delay ed attendere che la porta sia pronta.
while (!Serial);

Mappa e Link


Arduino indice | Integrazioni tipiche | Arduino Progetti


C++ Info fondamentali | Domotica | ESP8266 | Dizionario Elettronica | Elettronica | Elettronica Appunti


Parole chiave: