Scegli la tua lingua
Corso Avanzato di Sistemi Embedded con Arduino
Più di 2 milioni di studenti in tutto il mondo

Corso Avanzato di Sistemi Embedded con Arduino

Porti le Sue competenze Arduino dal livello hobbistico a quello professionale con un programma pratico e rigoroso che copre controllo in tempo reale, protocolli seriali, rilevamento analogico, IoT wireless e sicurezza embedded. Lavorerà a livello di registro, realizzerà firmware di qualità professionale e integrerà sistemi completi dal sensore al cloud. Questo è il corso che colma il divario tra il far lampeggiare un LED e il consegnare prodotti embedded reali.

Dedika per aziende

Cosa imparerai:

  • Configuri i timer hardware e le routine di servizio dell'interruzione per un controllo embedded in tempo reale di precisione.

  • Costruisca e metta a punto regolatori PID ad anello chiuso per motori DC, motori passo-passo e servosistemi.

  • Implementi i protocolli UART, SPI e I2C a livello di registro per interfacciare sensori e periferiche.

  • Ottimizzi l'uso di Flash, SRAM ed EEPROM per prevenire l'esaurimento della memoria su microcontrollori con risorse limitate.

  • Integri la connettività Wi-Fi, Bluetooth e MQTT in sistemi IoT basati su Arduino con le best practice di sicurezza.

  • Progetti e convalidi un sistema embedded completo attraverso test d'unità, profilazione e consegna documentata del progetto finale.

Come studi in modo pratico Corso Avanzato di Sistemi Embedded con Arduino

Come metti in pratica Corso Avanzato di Sistemi Embedded con Arduino

Per te che sei un'azienda e vuoi formare il tuo team

Su Dedika per aziende, il corso include esercizi ed esempi personalizzati sul tuo business e secondo le esigenze della tua azienda.

Clicca qui

Contenuto del corso

8 Capitoli • 40 LezioniDurata tra 4 e 360 ore (decidi tu)

Capitolo 1Vedi dettagli

Fondamenti della Piattaforma Arduino

  • Lezione 1 • Elementi Essenziali dell'Architettura dei Microcontrollori

    Tratta i core della CPU, i tipi di memoria e le strutture dei bus all'interno dei microcontrollori AVR e ARM. Stabilisce il vocabolario hardware utilizzato in tutto il corso.

  • Lezione 2 • Varianti e Selezione delle Schede Arduino

    Confronta le schede Uno, Mega, Nano e a 32 bit in base a specifiche e casi d'uso. Guida le decisioni di selezione hardware per progetti embedded.

  • Lezione 3 • Struttura dello Sketch e Modello di Esecuzione

    Spiega setup(), loop() e il modello di esecuzione bare-metal senza scheduler di sistema operativo. Prepara gli studenti a ragionare su temporizzazione e flusso di controllo.

  • Lezione 4 • Configurazione dell'IDE e della Toolchain

    Installa e configura l'IDE e la CLI di Arduino, i pacchetti delle schede e i driver. Collega la configurazione della toolchain a cicli efficienti di compilazione e upload.

  • Lezione 5 • Fondamenti di GPIO e Primo Progetto

    Configura i pin digitali come ingressi e uscite utilizzando i registri e le chiamate API di Arduino. Realizza un circuito LED e pulsante verificato come progetto di base.

Capitolo 2Vedi dettagli

Timer, Interrupt e Controllo in Tempo Reale

  • Lezione 1 • Generazione di Segnali PWM

    Genera forme d'onda PWM veloce e PWM a fase corretta utilizzando le unità di confronto dei timer. Applica il PWM a circuiti di controllo della velocità del motore e attenuazione dei LED.

  • Lezione 2 • Interrupt Esterni e su Cambio di Pin

    Configura i vettori INT0/INT1 e PCINT per il rilevamento di eventi attivati sul fronte. Collega latenza e priorità degli interrupt ai requisiti dei sistemi in tempo reale.

  • Lezione 3 • Pattern di Scheduling Non Bloccante

    Implementa uno scheduling cooperativo dei task utilizzando millis() e flag dei timer senza un RTOS. Sostituisce il codice basato su delay() con macchine a stati guidate dagli eventi.

  • Lezione 4 • Architettura dei Timer Hardware

    Esamina i registri dei timer a 8 e 16 bit, i prescaler e il comportamento di overflow. Fornisce le basi a livello di registro per tutte le tecniche basate su timer.

  • Lezione 5 • Routine di Servizio dell'Interrupt del Timer

    Scrive ISR per task periodici utilizzando le modalità CTC e overflow. Applica le best practice delle ISR per prevenire race condition e overflow dello stack.

Capitolo 3Vedi dettagli

Rilevamento Analogico e Condizionamento del Segnale

  • Lezione 1 • Algoritmi di Filtraggio Digitale

    Implementa filtri a media mobile, esponenziali e mediana nel firmware. Quantifica la latenza del filtro e la riduzione del rumore per decisioni di fusione dei sensori.

  • Lezione 2 • Condizionamento e Amplificazione del Segnale

    Progetta stadi di guadagno con amplificatori operazionali e circuiti di traslazione di livello per adattare l'uscita del sensore al range dell'ADC. Riduce l'errore di offset e di guadagno prima della digitalizzazione.

  • Lezione 3 • Tecniche di Interfacciamento dei Sensori

    Collega correttamente agli ingressi ADC sensori resistivi, capacitivi e con uscita in tensione. Tratta la polarizzazione, gli effetti di carico e l'adattamento di impedenza di ingresso.

  • Lezione 4 • Architettura e Configurazione dell'ADC

    Configura il prescaler dell'ADC, la tensione di riferimento e le modalità di conversione per l'accuratezza. Collega le impostazioni dell'ADC ai compromessi di larghezza di banda del segnale e rumore.

  • Lezione 5 • Calibrazione e Compensazione degli Errori

    Applica la calibrazione a due punti e polinomiale per rimuovere gli errori sistematici del sensore. Memorizza i coefficienti di calibrazione in EEPROM per un'accuratezza persistente.

Capitolo 4Vedi dettagli

Protocolli di Comunicazione Seriale

  • Lezione 1 • Protocollo UART e Debugging Seriale

    Configura la velocità di trasmissione, il formato del frame e il controllo di flusso per la comunicazione UART. Utilizza l'uscita seriale come canale primario di debugging e registrazione dati.

  • Lezione 2 • Progettazione e Indirizzamento del Bus I2C

    Implementa letture e scritture master I2C con corretta gestione di ACK/NACK. Risolve i conflitti di indirizzo e la contesa del bus in sistemi multi-dispositivo.

  • Lezione 3 • Acquisizione e Analisi con Analizzatore Logico

    Acquisisce e decodifica transazioni UART, SPI e I2C con un analizzatore logico. Correla le anomalie della forma d'onda ai bug del firmware per una diagnosi rapida.

  • Lezione 4 • Rilevamento e Ripristino degli Errori di Protocollo

    Identifica errori di framing, blocchi del bus e condizioni di timeout in tutti e tre i protocolli. Implementa il ripristino basato su watchdog e la logica di ritentativo.

  • Lezione 5 • Modalità Master e Slave del Bus SPI

    Configura la polarità del clock, la fase e l'ordine dei bit SPI per trasferimenti full-duplex. Interfaccia schede SD, DAC e controller di visualizzazione tramite SPI.

Capitolo 5Vedi dettagli

Controllo degli Attuatori e Gestione della Potenza

  • Lezione 1 • Budget di Potenza e Modalità di Sleep

    Calcola i budget di potenza del sistema e applica le modalità di sleep AVR per estendere la durata della batteria. Integra il rilevamento della corrente per la protezione da sovraccarico.

  • Lezione 2 • Tecniche di Controllo del Motore Passo-Passo

    Implementa sequenze a passo intero, mezzo passo e micropasso per motori passo-passo. Regola la modalità di decadimento della corrente e i profili di accelerazione per un movimento fluido.

  • Lezione 3 • Implementazione del Controllo PID ad Anello Chiuso

    Implementa un controllore PID discreto nel firmware per gli anelli di velocità e posizione del motore. Regola Kp, Ki e Kd utilizzando l'analisi della risposta al gradino.

  • Lezione 4 • Circuiti di Pilotaggio per Motori DC

    Progetta circuiti a ponte H e seleziona gate driver per il controllo bidirezionale del motore DC. Collega il ciclo di lavoro PWM alla velocità del motore e all'uscita di coppia.

  • Lezione 5 • Controllo di Servomotori e Segnale RC

    Genera impulsi PWM precisi a 50 Hz per il posizionamento di servi hobbistici e industriali. Estende il controllo a sistemi multi-servo utilizzando il multiplexing dei timer.

Capitolo 6Vedi dettagli

Gestione della Memoria e Archiviazione dei Dati

  • Lezione 1 • Integrazione del File System su Scheda SD

    Monta file system FAT16/FAT32 su schede SD tramite SPI ed esegue I/O su file. Implementa scritture bufferizzate per bilanciare throughput e integrità dei dati.

  • Lezione 2 • Ottimizzazione di Flash e PROGMEM

    Memorizza dati costanti in Flash utilizzando PROGMEM per liberare SRAM per le variabili di runtime. Applica direttive del compilatore e strumenti di analisi delle dimensioni per ridurre l'ingombro del codice.

  • Lezione 3 • Lettura, Scrittura e Livellamento dell'Usura della EEPROM

    Legge e scrive sulla EEPROM con scritture di solo aggiornamento per minimizzare i cicli di cancellazione. Implementa il livellamento dell'usura per l'archiviazione di configurazioni ad alta frequenza.

  • Lezione 4 • Mappa della Memoria AVR e Vincoli

    Mappa le regioni di Flash, SRAM ed EEPROM e quantifica il loro impatto sulla progettazione del firmware. Identifica la collisione stack-heap come modalità di guasto primaria a runtime.

  • Lezione 5 • Progettazione di un Sistema di Registrazione Dati

    Costruisce un data logger con timestamp, sicuro per gli interrupt, che combina RTC, scheda SD e buffer circolari. Convalida l'integrità del log in condizioni di perdita di potenza.

Capitolo 7Vedi dettagli

Comunicazione Wireless e Integrazione IoT

  • Lezione 1 • Sicurezza e Integrità dei Dati per l'IoT

    Applica TLS, HMAC e autenticazione basata su token per proteggere gli endpoint IoT embedded. Affronta la sicurezza dell'aggiornamento del firmware e l'archiviazione delle credenziali.

  • Lezione 2 • Comunicazione Bluetooth Classic e BLE

    Associa i moduli HC-05 per Bluetooth seriale e configura i servizi BLE GATT su ESP32. Costruisce un'applicazione embedded controllata da dispositivo mobile.

  • Lezione 3 • Integrazione del Modulo Wi-Fi

    Collega i moduli ESP8266 ed ESP32 ad Arduino tramite comandi AT e SDK nativo. Stabilisce connessioni TCP/IP e HTTP per il caricamento dei dati.

  • Lezione 4 • Protocollo MQTT per la Messaggistica IoT

    Implementa i pattern di publish e subscribe MQTT per la telemetria leggera dei sensori. Configura i livelli di QoS, i messaggi retained e i topic last-will.

  • Lezione 5 • Comunicazione a Lungo Raggio LoRa

    Configura lo spreading factor, la larghezza di banda e il coding rate LoRa per la portata rispetto alla velocità dati. Implementa topologie di rete punto-punto e a stella.

Capitolo 8Vedi dettagli

Integrazione del Sistema e Progetto Finale

  • Lezione 1 • Profilazione delle Prestazioni e Ottimizzazione

    Misura la latenza dell'ISR, la temporizzazione del loop e l'utilizzo della memoria con toggle GPIO e macro di profilazione. Applica ottimizzazioni mirate senza sacrificare la leggibilità.

  • Lezione 2 • Consegna e Revisione del Progetto Finale

    Fornisce un sistema embedded completamente documentato che soddisfi i requisiti definiti, attraverso la revisione tra pari e dell'istruttore. Produce una relazione tecnica e una dimostrazione.

  • Lezione 3 • Architettura e Partizionamento del Sistema

    Scompone un sistema embedded complesso in moduli hardware e firmware con interfacce definite. Applica un'architettura a strati per isolare le dipendenze hardware.

  • Lezione 4 • Gestione degli Errori del Firmware e Watchdog

    Implementa codifica difensiva, macro di asserzione e reset del watchdog per la tolleranza ai guasti. Registra i codici di errore in EEPROM per l'analisi post-mortem.

  • Lezione 5 • Test Unitari e di Integrazione su Hardware

    Scrive test unitari hardware-in-the-loop utilizzando il framework ArduinoUnit. Convalida le interazioni dei moduli attraverso sequenze di test di integrazione scriptate.

Certificazione

Il tuo certificato valido di completamento

Questo corso è per te:

  • Maker hobbista: pronto a superare i progetti del fine settimana per adottare una pratica ingegneristica disciplinata.

  • Studente di ingegneria elettronica: cerca un approfondimento pratico sul firmware per integrare il percorso universitario.

  • Sviluppatore software: desidera ampliare le proprie competenze verso i sistemi embedded e i prodotti hardware connessi.

  • Ingegnere meccanico: necessita di competenze firmware per prototipare e controllare sistemi elettromeccanici in autonomia.

  • Professionista in transizione di carriera: intende costruire un portfolio embedded credibile per entrare professionalmente nel settore hardware.

  • Tecnico elettronico: mira a crescere passando dall'assemblaggio hardware allo sviluppo firmware e alla progettazione di sistemi.

Cosa dicono i nostri studenti

Le sue lezioni sono perfette. Ho acquistato il pacchetto annuale e finalmente ho l'opportunità di seguire diversi argomenti di mio interesse senza dover cambiare piattaforma... vi ringrazio per tutto quello che fate, vi ho già raccomandati ad altre persone...
Giulio Carlo
Giulio CarloStudente di Marketing Digitale
Mi piace come le lezioni vanno dritte al punto e come riesco a cambiare capitoli e saltare contenuti di cui non ho bisogno.
Mariana Ferres
Mariana FerresStudentessa di Fotografia
Mi piace il contenuto e il modo di presentazione e trascrizione dei video, che accelera il processo!
Luciana Alvarenga
Luciana AlvarengaStudentessa di Nail Design
La piattaforma è veloce, semplice da usare. La diversità dei contenuti e i video complementari aiutano molto nell'apprendimento.
André Felipe
André FelipeStudente di Prompt Engineering

Principali percorsi formativi

FAQ

Chi è Dedika?

Il certificato è valido in Italia?

I corsi sono gratuiti?

Qual è il carico di lavoro del corso?

Come sono strutturati i corsi?

Come funzionano i corsi?

Qual è la durata dei corsi?

Qual è il costo o il prezzo dei corsi?

Cos’è un corso EAD o online e come funziona?

Corso PDF