Come configurare smartphone e PC. Portale informativo
  • casa
  • Errori
  • Programmazione Arduino per principianti in russo. Arduino - Nozioni di base sulla programmazione

Programmazione Arduino per principianti in russo. Arduino - Nozioni di base sulla programmazione

Avrai bisogno

  • Scheda Arduino UNO;
  • Cavo USB (USB A - USB B);
  • Personal computer;
  • Diodo ad emissione luminosa;
  • una coppia di fili di collegamento lunghi 5-10 cm;
  • se disponibile - breadboard.
IDE di Arduino

Scarica l'ambiente di sviluppo Arduino (Arduino IDE) dal sito ufficiale per il tuo sistema operativo (sono supportati Windows, Mac OS X, Linux). È possibile selezionare il programma di installazione ( Installatore), è possibile archiviare ( File ZIP per l'installazione non amministrativa). Nel secondo caso il programma viene semplicemente avviato dalla cartella, senza installazione. Il file scaricato contiene, oltre all'ambiente di sviluppo, i driver per le schede della famiglia Arduino.

Scarica l'IDE Arduino dal sito ufficiale

2 Collegamento ad Arduino al computer

Collega la scheda Arduino utilizzando un cavo USB (tipo USB-A a USB-B) al computer. Il LED verde ON sulla scheda dovrebbe accendersi.


Cavo "USB-A - USB-B" per collegare Arduino al computer

3 Installazione del driver perArduino

Installa il driver per Arduino. Considera l'opzione di installazione sul sistema operativo Windows. Per fare ciò, attendi finché il sistema operativo non ti chiede di installare il driver. Declino. Premere i tasti Vinci+Pausa, correre gestore dispositivi. Trova una sezione "Porte (COM e LPT)". Vedrai un porto lì con il nome Arduino UNO (COMxx). Fare clic destro su di esso e selezionare Aggiorna driver. Comunica al sistema operativo la posizione del driver. Si trova nella sottodirectory autisti nella cartella che abbiamo appena scaricato.

Nota la porta a cui è collegata la scheda Arduino. Per scoprire il numero della porta, avvia Gestione dispositivi e cerca la sezione "Porte (COM e LPT)". Il numero di porta sarà indicato tra parentesi dopo il nome della scheda. Se la scheda non è nell'elenco, prova a disconnetterla dal computer e ad attendere qualche secondo, quindi ricollegala.

Arduino in Gestione dispositivi di Windows

4 Impostazioni IDE di Arduino

Punta il tuo ambiente di sviluppo sulla tua bacheca. Per farlo nel menu Scheda degli strumenti Selezionare Arduino UNO.


Seleziona la scheda Arduino UNO nelle impostazioni

Specificare il numero della porta COM a cui è collegata la scheda Arduino: Porta Strumenti.


Imposta la porta seriale a cui è collegata la scheda Arduino

5 Apri l'esempio programmi

L'ambiente di sviluppo contiene già numerosi programmi di esempio per studiare il funzionamento della scheda. Apri l'esempio "Blink": File di esempio 01.Nozioni di base Lampeggiano.A proposito, i programmi per Arduino si chiamano "schizzi".


Apri uno schizzo di esempio per Arduino

6 Assemblaggio del circuito con LED

Scollega Arduino dal computer. Assemblare il circuito come mostrato in figura. Tieni presente che il piedino corto del LED deve essere collegato al pin GND, il piedino lungo al pin digitale “13” della scheda Arduino. È conveniente utilizzare una breadboard, ma se non ne hai una, collega i fili con una torsione.

Il pin digitale "13" ha un resistore integrato sulla scheda. Pertanto, quando si collega un LED alla scheda, non è necessario utilizzare un resistore limitatore di corrente esterno. Quando si collega un LED a qualsiasi altro pin di Arduino, è necessario utilizzare un resistore, altrimenti brucerai il LED e, nel peggiore dei casi, la porta Arduino a cui è collegato il LED!


Schema di collegamento del LED ad Arduino nella memoria Arduino

Ora puoi caricare il programma nella memoria della scheda. Collega la scheda al computer, attendi qualche secondo mentre la scheda si inizializza. Fare clic sul pulsante Scaricamento e il tuo schizzo verrà scritto nella memoria della scheda Arduino. Il LED dovrebbe iniziare a lampeggiare allegramente ogni 2 secondi (1 secondo acceso, 1 secondo spento). Di seguito è riportato il codice per il nostro primo programma Arduino.

configurazione nulla() (// blocco di inizializzazione pinMode(13, OUTPUT); // imposta il pin 13 come uscita. } ciclo vuoto() (// loop che si ripete all'infinito finché la scheda è accesa: digitalWrite(13, HIGH); // applica un livello alto al pin 13 - accende il LED delay(1000); // per 1000 ms = 1 secondo. scrittura digitale(13, BASSO); // applica un livello basso al pin 13 - disattiva il ritardo LED (1000); // per 1 secondo. } // quindi il ciclo si ripete

Leggi i commenti nel testo del programma: sono sufficienti per comprendere il nostro primo esperimento. Per prima cosa descriviamo il blocco di inizializzazione impostare(), in cui impostiamo i valori iniziali delle variabili e le funzioni dei pin di Arduino. Segue un ciclo infinito ciclo continuo(), che si ripete continuamente finché la scheda è alimentata. In questo ciclo eseguiamo tutte le azioni necessarie. In questo caso, accendiamo e spegniamo il LED. Operatore ritardo() specifica la durata dell'esecuzione (in millisecondi) dell'istruzione precedente. Operatore scrittura digitale() dice ad Arduino a quale pin applicare la tensione e quale livello di tensione. Il tuo primo schizzo è pronto!

Esistono molti siti su Internet dedicati al lavoro con le schede della famiglia Arduino. Leggi, padroneggia, non aver paura di sperimentare e imparare cose nuove! Questa è un'attività divertente e gratificante che ti porterà molto piacere.

Nota

Fai attenzione quando lavori con la scheda Arduino: questo è un prodotto elettronico che richiede un'attenta gestione. Ci sono conduttori esposti sul fondo della scheda e, se la posizioni su una superficie conduttiva, esiste il rischio di bruciarla. Inoltre, non toccare la tavola con le mani umide o bagnate ed evitare le aree umide durante il lavoro.

Ciao! Sono Alikin Alexander Sergeevich, insegnante di istruzione aggiuntiva, dirigo i club "Robotica" e "Ingegneria radiofonica" presso il Centro per la gioventù e la tecnologia giovanile di Labinsk. Vorrei parlare un po' di un metodo semplificato per programmare Arduino utilizzando il programma ArduBlock.

Ho introdotto questo programma nel processo educativo e sono soddisfatto del risultato, è molto richiesto dai bambini, soprattutto quando si scrivono programmi semplici o si creano alcune fasi iniziali di programmi complessi. ArduBlock è un ambiente di programmazione grafico, ovvero tutte le azioni vengono eseguite con immagini disegnate con azioni firmate in russo, il che semplifica notevolmente l'apprendimento della piattaforma Arduino. Grazie a questo programma i bambini a partire dalla seconda elementare potranno facilmente padroneggiare il lavoro con Arduino.

Sì, qualcuno potrebbe dire che Scratch esiste ancora ed è anche un ambiente grafico molto semplice per programmare Arduino. Ma Scratch non esegue il flashing di Arduino, ma lo controlla solo tramite un cavo USB. Arduino dipende dal computer e non può funzionare in modo autonomo. Quando crei i tuoi progetti, l'autonomia è la cosa principale per Arduino, soprattutto quando crei dispositivi robotici.

Anche i famosi robot LEGO, come NXT o EV3, non sono più così interessanti per i nostri studenti con l'avvento del programma ArduBlock nella programmazione Arduino. Arduino è anche molto più economico di qualsiasi kit di costruzione LEGO e molti componenti possono essere semplicemente presi dai vecchi elettrodomestici. Il programma ArduBlock aiuterà non solo i principianti, ma anche gli utenti attivi della piattaforma Arduino.

Allora, cos'è ArduBlock? Come ho già detto, questo è un ambiente di programmazione grafica. Quasi completamente tradotto in russo. Ma il punto forte di ArduBlock non è solo questo, ma anche il fatto che il programma ArduBlock che abbiamo scritto si converte in codice IDE Arduino. Questo programma è integrato nell'ambiente di programmazione IDE di Arduino, ovvero è un plug-in.

Di seguito è riportato un esempio di un LED lampeggiante e di un programma convertito nell'IDE Arduino. Tutto il lavoro con il programma è molto semplice e qualsiasi studente può capirlo.

Come risultato del lavoro con il programma, non solo puoi programmare Arduino, ma anche studiare comandi che non comprendiamo nel formato testo dell'IDE di Arduino, ma se sei troppo pigro per scrivere comandi standard, puoi utilizzare rapidamente il mouse per abbozzare un semplice programma in ArduBlok ed eseguirne il debug nell'IDE di Arduino.

Per installare ArduBlok, devi prima scaricare e installare l'IDE Arduino dal sito Web ufficiale di Arduino e comprendere le impostazioni quando lavori con la scheda Arduino UNO. Come farlo è descritto sullo stesso sito web o su Amperka, oppure guardalo su YouTube. Bene, una volta capito tutto questo, devi scaricare ArduBlok dal sito ufficiale, qui. Non consiglio di scaricare le versioni più recenti, sono molto complicate per i principianti, ma la versione del 12-07-2013 è la migliore, questo file è il più popolare lì.

Quindi, rinomina il file scaricato in ardublock-all e nella cartella "documenti". Creiamo le seguenti cartelle: Arduino > tools > ArduBlockTool > tool e in quest'ultima gettiamo il file scaricato e rinominato. ArduBlok funziona su tutti i sistemi operativi, anche su Linux, l'ho testato personalmente su XP, Win7, Win8, tutti gli esempi sono per Win7. L'installazione del programma è la stessa per tutti i sistemi.

Bene, per dirla semplicemente, ho preparato un archivio sul disco 7z Mail, spacchettandolo troverai 2 cartelle. In una c'è già un programma IDE Arduino funzionante, e nell'altra cartella il contenuto deve essere inviato alla cartella documenti.

Per lavorare in ArduBlok, è necessario eseguire l'IDE Arduino. Quindi andiamo alla scheda Strumenti e lì troviamo l'elemento ArduBlok, facciamo clic su di esso - ed eccolo qui, il nostro obiettivo.

Ora diamo un'occhiata all'interfaccia del programma. Come già capisci, non ci sono impostazioni, ma ci sono molte icone per la programmazione e ognuna di esse porta un comando in formato testo IDE Arduino. Le nuove versioni hanno ancora più icone, quindi comprendere l'ultima versione di ArduBlok è difficile e alcune icone non sono tradotte in russo.

Nella sezione "Gestione" troveremo una varietà di cicli.

Nella sezione “Porte” possiamo gestire i valori delle porte, nonché l'emettitore sonoro, il servo o il sensore di prossimità a ultrasuoni ad esse collegati.

Nella sezione “Numeri/Costanti” possiamo selezionare valori digitali o creare una variabile, ma difficilmente utilizzerai quanto riportato di seguito.

Nella sezione “Operatori” troveremo tutti gli operatori di confronto e calcolo necessari.

La sezione Utilità utilizza principalmente icone temporizzate.

"TinkerKit Bloks" è la sezione per i sensori TinkerKit acquistati. Noi ovviamente non abbiamo un set del genere, ma questo non significa che le icone non siano adatte ad altri set, al contrario, è molto comodo per i ragazzi usare icone come accendere un LED o un pulsante. Questi segni sono utilizzati in quasi tutti i programmi. Ma hanno una particolarità: quando li selezioni, ci sono icone errate che indicano le porte, quindi devi rimuoverle e sostituire l'icona dalla sezione "numeri/costanti" in alto nell'elenco.

"DF Robot": questa sezione viene utilizzata se sono presenti i sensori specificati in essa, a volte vengono trovati. E il nostro esempio di oggi non fa eccezione, abbiamo un “Interruttore IR regolabile” e un “Sensore di linea”. Il “sensore di linea” è diverso da quello in foto, poiché è della ditta Amperka. Le loro azioni sono identiche, ma il sensore Ampere è molto migliore, poiché ha un regolatore di sensibilità.

“Seedstudio Grove” - Non ho mai utilizzato i sensori in questa sezione, anche se sono presenti solo joystick. Nelle nuove versioni questa sezione è stata ampliata.

E l'ultima sezione è il "Linker Kit". Non mi sono imbattuto nei sensori presentati in esso.

Vorrei mostrare un esempio di programma su un robot che si muove lungo una striscia. Il robot è molto semplice, sia da montare che da acquistare, ma andiamo con ordine. Cominciamo con la sua acquisizione e assemblaggio.

Ecco l'insieme dei pezzi stessi, tutto è stato acquistato sul sito Amperka.

  1. AMP-B001 Protezione motore (2 canali, 2 A) RUB 1.890
  2. AMP-B017 Scudo Troyka RUB 1.690
  3. AMP-X053 Vano batteria 3×2 AA 1 60 RUR
  4. AMP-B018 Sensore di linea digitale RUB 2.580
  5. ROB0049 Piattaforma a due ruote MiniQ RUB 1,1890
  6. SEN0019 Sensore di ostacoli a infrarossi RUB 1.390
  7. FIT0032 Supporto per sensore di ostacoli a infrarossi RUB 1,90
  8. A000066 Arduino Uno 1 1150 RUR

Per prima cosa assembliamo la piattaforma con ruote e saldiamo i cavi ai motori.

Successivamente installeremo dei rack per montare la scheda Arduino UNO, presi da una vecchia scheda madre o altri supporti simili.

Quindi colleghiamo la scheda Arduino UNO a questi rack, ma non possiamo fissare un bullone: ​​i connettori sono d'intralcio. Ovviamente puoi dissaldarli, ma questo è a tua discrezione.

Successivamente colleghiamo il sensore di ostacoli a infrarossi al suo supporto speciale. Si prega di notare che il regolatore di sensibilità si trova nella parte superiore, questo serve per facilitare la regolazione.

Ora installiamo i sensori di linea digitali, qui dovrai cercare un paio di bulloni e 4 dadi, installiamo due dadi tra la piattaforma stessa e il sensore di linea e fissiamo i sensori con il resto.

Successivamente installiamo Motor Shield, o altrimenti puoi chiamarlo driver del motore. Nel nostro caso, presta attenzione al ponticello. Non utilizzeremo un'alimentazione separata per i motori, quindi verrà installata in questa posizione. La parte inferiore è sigillata con nastro isolante in modo che non si verifichino cortocircuiti accidentali dal connettore USB Arduino UNO, per ogni evenienza.

Installiamo Troyka Shield sopra il Motor Shield. È necessario per la comodità di collegare i sensori. Tutti i sensori che utilizziamo sono digitali, quindi i sensori di linea sono collegati alle porte 8 e 9, come vengono anche chiamati pin, e il sensore di ostacoli a infrarossi è collegato alla porta 12. Tieni presente che non puoi utilizzare le porte 4, 5, 6, 7 poiché vengono utilizzate da Motor Shield per controllare i motori. Ho anche dipinto appositamente queste porte con un pennarello rosso in modo che gli studenti potessero capirlo.

Se l'hai già notato, ho aggiunto una boccola nera, per ogni evenienza, in modo che il vano batteria che abbiamo installato non volasse via. E infine, fissiamo l'intera struttura con un normale elastico.

Esistono 2 tipi di collegamenti del vano batteria. Primo collegamento dei cavi a Troyka Shield. È anche possibile saldare la spina di alimentazione e collegarla alla stessa scheda Arduino UNO.

Il nostro robot è pronto. Prima di iniziare a programmare, dovrai imparare come funziona il tutto, vale a dire:
- Motori:
Le porte 4 e 5 vengono utilizzate per controllare un motore e 6 e 7 l'altro;
Regoliamo la velocità di rotazione dei motori utilizzando PWM sulle porte 5 e 6;
Avanti o indietro inviando segnali alle porte 4 e 7.
- Sensori:
Siamo tutti digitali, quindi danno segnali logici sotto forma di 1 o 0;
E per regolarli hanno appositi regolatori e con l'aiuto di un apposito cacciavite si possono calibrare.

I dettagli possono essere trovati su Amperke. Perché qui? Perché ci sono molte informazioni su come lavorare con Arduino.

Bene, probabilmente abbiamo guardato tutto superficialmente, studiato e, ovviamente, assemblato il robot. Ora deve essere programmato, eccolo: il programma tanto atteso!

E il programma è stato convertito in IDE Arduino:

Void setup() ( pinMode(8, INPUT); pinMode(12, INPUT); pinMode(9, INPUT); pinMode(4, OUTPUT); pinMode(7, OUTPUT); pinMode(5, OUTPUT); pinMode(6 , OUTPUT); ) void loop() ( if (digitalRead(12)) ( if (digitalRead(8)) ( if (digitalRead(9)) ( digitalWrite(4, HIGH); analogWrite(5, 255); analogWrite( 6, 255); digitalWrite(7, HIGH); ) altro ( digitalWrite(4, LOW); analogWrite(5, 255); analogWrite(6, 50); digitalWrite(7, LOW); ) ) altro ( if (digitalRead (9)) ( digitalWrite(4, BASSO); analogWrite(5, 50); analogWrite(6, 255); digitalWrite(7, ALTO); ) altro ( digitalWrite(4, ALTO); analogWrite(5, 255); analogWrite(6, 255); digitalWrite(7, ALTA); ) ) ) altro ( digitalWrite(4, ALTA); analogWrite(5, 0); analogWrite(6, 0); digitalWrite(7, ALTA); ) )

In conclusione, voglio dire che questo programma è semplicemente una manna dal cielo per l'istruzione; anche per lo studio autonomo, ti aiuterà ad apprendere i comandi dell'IDE di Arduino. Il punto forte è che ci sono più di 50 icone di installazione, inizia a "problemi". Sì, in effetti, questo è il momento clou, dal momento che programmare sempre solo su ArduBlok non ti insegnerà a programmare nell'IDE di Arduino. Il cosiddetto "glitch" ti dà l'opportunità di pensare e provare a ricordare i comandi per un debug preciso dei programmi.

Vi auguro il successo.

Il pubblico target di Arduino sono gli utenti non professionali nel campo della robotica e dei semplici sistemi di automazione. Il prodotto principale è un insieme di schede, combinando le quali è possibile creare vari dispositivi in ​​grado di svolgere un'ampia gamma di compiti.

Ad esempio, da un set di tavole prodotte da questa azienda, potete assemblare una mangiatoia automatica per i vostri animali domestici. E questo è solo uno degli esempi più semplici. La portata della loro possibile applicazione è limitata solo dall'immaginazione degli utenti.

Oltre ai circuiti stampati prodotti con il marchio Arduino, hanno il proprio linguaggio di programmazione Arduino, basato su un linguaggio ampiamente conosciuto tra i programmatori C/C++. Diamo uno sguardo più da vicino a cosa si tratta.

Il linguaggio di programmazione Arduino è abbastanza facile da imparare, poiché il pubblico target principale del suo utilizzo sono gli amatori. Tuttavia è considerato uno dei migliori linguaggi per la programmazione dei microcontrollori.

Arduino IDE è un programma gratuito che chiunque può scaricare. Sul nostro sito web puoi utilizzare qualsiasi versione dell'ambiente adatta a te. Inoltre, l'accesso per scaricare l'IDE è fornito sul sito Web ufficiale dell'azienda e, se lo si desidera, è possibile ringraziare gli sviluppatori effettuando un trasferimento di denaro.

Un programma scritto nel linguaggio di programmazione Arduino si chiama sketch. Gli schizzi finiti vengono registrati sulla lavagna per l'esecuzione.

L'IDE è supportato da sistemi operativi come Windows, MacOs e Linux. Il sito ufficiale dell'azienda afferma che questo linguaggio di programmazione è scritto in Wiring, ma in realtà non esiste ed è scritto in C++ con piccole modifiche.

Di cosa hai bisogno per iniziare con l'IDE Arduino?

Per iniziare avremo bisogno delle seguenti cose:

  • Schede Arduino;
  • Cavo USB;
  • un computer su cui è installato l'IDE Arduino.

Avendo questo set, puoi iniziare a sperimentare con le tavole che hai, registrando su di esse i tuoi primi schizzi.

Come configurare Arduino su un computer?

Questo viene fatto semplicemente. È necessario effettuare le seguenti operazioni:

  • devi collegare il prodotto che hai assemblato al tuo computer tramite un cavo USB;
  • In Gestione dispositivi devi verificare a quale porta è connesso il tuo microcontrollore. Se non viene visualizzato o dice che il dispositivo non viene riconosciuto, significa che non hai installato correttamente il driver oppure la tua scheda necessita di diagnostica;
  • Il prossimo passo è lanciare il nostro linguaggio di programmazione IDE Arduino. Nel menu è necessario selezionare la scheda Strumenti. Facendo clic su di esso, si aprirà un elenco in cui è necessario selezionare l'elemento della porta. Lì devi selezionare la porta specificata in Gestione dispositivi;
  • Il passaggio finale è selezionare la scheda che utilizzeremo per caricare gli schizzi.

Importante! Quando si collega la scheda a un'altra porta USB, tutte le impostazioni dovranno essere effettuate nuovamente.

Introduzione all'interfaccia Arduino

Uno degli elementi principali di Arduino è il menu principale del programma, che ti consente di accedere a tutte le funzioni disponibili del nostro programma.

Di seguito è riportato un pannello con icone che visualizzano le funzioni più utilizzate dell'IDE Arduino:

  • controllo degli errori;
  • creare un nuovo schizzo;
  • apertura della finestra della porta del microcontrollore;
  • Il successivo elemento più importante è la scheda dei file di progetto. Se si tratta di uno schizzo semplice, ci sarà un solo file. Tuttavia, gli schizzi complessi possono essere costituiti da più file. In questo caso, puoi passare rapidamente dalla visualizzazione di un file all'altro nella barra delle schede. È molto comodo

    Il più grande dei blocchi è il campo dell'editor per i nostri schizzi. Qui possiamo visualizzare e, se necessario, modificare il codice del programma di cui abbiamo bisogno. È stato implementato un campo separato per la visualizzazione dei messaggi di sistema. Con esso, puoi verificare che il salvataggio o il caricamento del tuo schizzo sia andato a buon fine e puoi procedere con i passaggi successivi. C'è anche una finestra nel programma che mostra la presenza del tuo schizzo durante la compilazione.

    Compilazione– convertire il codice sorgente del linguaggio di alto livello in codice macchina o linguaggio assembly.

    Funzioni di base del linguaggio di programmazione

    Passiamo finalmente alle funzioni più basilari del linguaggio di programmazione Arduino.

    Diciamo subito che tutte le funzionalità le trovate nel nostro comodo sito.

    Punto e virgola;

    Un punto e virgola deve seguire ogni espressione scritta nel linguaggio di programmazione Arduino. Per esempio:

    Int LEDpin = 9;

    In questa espressione stiamo assegnando un valore a una variabile e notiamo il punto e virgola alla fine. Questo dice al compilatore che hai finito un pezzo di codice e passi al pezzo successivo. Un punto e virgola nel codice Arduino separa un'espressione completa da un'altra.

    Doppia barra rovesciata per commenti su riga singola //

    // Tutto ciò che viene dopo la doppia barra sarà grigio e non verrà letto dal programma

    I commenti sono ciò che usi per commentare il codice. Un buon codice è ben commentato. I commenti hanno lo scopo di dire a te, e a chiunque altro possa imbattersi nel tuo codice, cosa stavi pensando quando lo hai scritto. Un buon commento sarebbe qualcosa del genere:

    // Collega un LED a questo pin di Arduino int LEDpin = 9;

    Ora, anche dopo 3 mesi, quando guardo questo programma, so dove era collegato il LED.

    Il compilatore ignorerà i commenti, quindi puoi scrivere quello che vuoi. Se hai bisogno di molto testo per un commento puoi utilizzare un commento su più righe mostrato di seguito:

    /* Un commento su più righe viene aperto con una singola barra rovesciata seguita da un asterisco. Tutto ciò che segue verrà disattivato e ignorato dal compilatore finché non chiudi il commento utilizzando prima un asterisco e poi una barra rovesciata */

    I commenti sono simili alle note a piè di pagina del codice, ma sono più comuni di quelli posizionati in fondo alle pagine dei libri.

    Parentesi graffe ( )

    Le parentesi graffe vengono utilizzate per aggiungere istruzioni che devono essere eseguite da una funzione (discuteremo le funzioni più avanti). C'è sempre una parentesi graffa aperta e una parentesi graffa di chiusura. Se ti dimentichi di chiudere una parentesi graffa, il compilatore stamperà un codice di errore.

    Void loop() ( //questa parentesi graffa apre //un bel programma qui ) //questa parentesi graffa si chiude

    Ricorda: nessuna parentesi graffa può essere lasciata aperta!

    Funzioni ()

    Ora è il momento di parlare di funzioni. Le funzioni sono pezzi di codice che vengono utilizzati così spesso da essere incapsulati in parole chiave specifiche in modo da poterli utilizzare più facilmente. Ad esempio, una funzione potrebbe essere la seguente serie di istruzioni se devi lavare il tuo cane:

    1. Prendi un secchio
    2. Riempilo con acqua
    3. Aggiungi sapone
    4. Trova un cane
    5. Insapona il cane
    6. Lava il cane
    7. Sciacquare il cane
    8. Asciuga il cane
    9. Metti da parte il secchio

    Questo insieme di semplici istruzioni può essere incapsulato in una funzione che chiameremo WashDog. Ogni volta che vogliamo eseguire tutte queste istruzioni, digitiamo semplicemente WashDog e voilà: tutte le istruzioni vengono eseguite.

    Arduino ha alcune funzioni che vengono spesso utilizzate nei file . Quando li inserisci, il nome della funzione sarà arancione. Ad esempio, la funzione pinMode() è una funzione comune utilizzata per indicare la modalità pin di Arduino.

    Che dire delle parentesi dopo la funzione pinMode? Molte funzioni richiedono argomenti. Un argomento è l'informazione che una funzione utilizza quando viene eseguita. Per la nostra funzione WashDog, gli argomenti possono essere il nome del cane e il tipo di sapone, nonché la temperatura e la dimensione del secchio.

    Modalità Pin(13, USCITA); //Imposta la modalità di output di Arduino

    L'argomento 13 si riferisce al pin 13 e OUTPUT è la modalità in cui si desidera che il pin operi. Quando si inseriscono questi argomenti, nella terminologia questo si chiama passaggio dati, si passano le informazioni necessarie alle funzioni. Non tutte le funzioni richiedono argomenti, ma le parentesi di apertura e chiusura rimangono, anche se vuote.

    Millis(); //Ottiene il tempo in millisecondi durante il quale Arduino si avvia

    Tieni presente che la parola OUTPUT è solitamente blu. Ci sono alcune parole chiave nel linguaggio di programmazione Arduino che vengono utilizzate frequentemente e il colore blu aiuta a identificarle. L'IDE di Arduino li trasforma automaticamente in blu.

    configurazione nulla()

    La funzione setup(), come suggerisce il nome, viene utilizzata per configurare la scheda Arduino. Arduino esegue tutto il codice contenuto tra le parentesi graffe dopo setup() una sola volta. Le cose tipiche che accadono in setup() sono, ad esempio, l'impostazione della modalità sui contatti:

    Void setup() ( //il codice tra parentesi graffe viene eseguito una sola volta)

    Forse ti starai chiedendo cosa significa void prima della funzione setup(). Void significa che la funzione non restituisce informazioni.

    Alcune funzioni restituiscono valori: la nostra funzione DogWash può restituire il numero di secchi necessari per pulire un cane. La funzione analogRead() restituisce un valore intero compreso tra 0 e 1023. Se ora ti sembra un po' strano, non preoccuparti perché nel corso del corso tratteremo tutte le funzioni comuni di Arduino.

    Diamo un'occhiata ad un paio di cose che dovresti sapere su setup():

    1. setup() viene eseguito solo una volta;
    2. setup() dovrebbe essere la prima funzione nello sketch di Arduino;
    3. setup() deve avere parentesi graffe di apertura e chiusura.

    ciclo vuoto()

    Devi amare gli sviluppatori di Arduino perché si sono assicurati che i nomi delle funzioni parlassero da soli. Come suggerisce il nome, tutto il codice racchiuso tra le parentesi graffe in loop() viene ripetuto più e più volte e la parola loop significa letteralmente “loop”. La funzione loop() è dove andrà il corpo del tuo programma.

    Come con setup(), loop() non restituisce alcun valore, quindi è preceduto dalla parola void.

    Void loop() ( //qualsiasi codice specificato qui viene eseguito più e più volte)

    Ti sembra strano che il codice venga eseguito in un unico grande loop? Questa apparente mancanza di variazione è un’illusione. La maggior parte del codice avrà determinate condizioni di attesa che attiveranno nuove azioni.

    Esistono altri programmi che funzionano con Arduino?

    Oltre all'IDE Arduino ufficiale, esistono programmi di terze parti che offrono i loro prodotti per lavorare con microcontrollori basati su Arduino.

    Un insieme simile di funzioni può esserci fornito da un programma chiamato Processing. È molto simile all'IDE di Arduino, poiché entrambi sono realizzati sullo stesso motore. L'elaborazione ha una vasta gamma di funzioni che non sono molto inferiori al programma originale. Con l'aiuto della libreria Serial scaricabile, l'utente può creare un collegamento tra la trasmissione dei dati che la scheda e Processing si trasmettono tra loro, in questo caso possiamo far eseguire i programmi alla scheda direttamente dal nostro PC.

    Esiste un'altra versione interessante del programma originale. Si chiama B4R e la sua differenza principale è che non utilizza come base il linguaggio C, ma un altro linguaggio di programmazione: Basic. Questo prodotto software è gratuito. Ci sono buoni tutorial per lavorarci, compresi quelli scritti dai creatori di questo prodotto.

    Esistono anche opzioni a pagamento per l'IDE Arduino. Uno di questi è il programma PROGROMINO. Il suo principale vantaggio è la possibilità di completamento del codice. Quando compili un programma, non avrai più bisogno di cercare informazioni nei libri di consultazione. Il programma stesso ti offrirà le possibili opzioni per l'utilizzo di una particolare procedura. Il suo set include molte altre funzioni interessanti che mancano nel programma originale e possono semplificarti il ​​lavoro con le schede.

    Concorrenti di Arduino

    Questo mercato per la produzione di microcontrollori per la creazione di vari circuiti elettronici e robotica ha molti fan in tutto il mondo. Questa situazione contribuisce all'emergere sul mercato non solo di concorrenti che offrono prodotti simili. Oltre a loro, viene prodotto un numero significativo di falsi di varia qualità. Alcuni sono molto difficili da distinguere dagli originali perché hanno la stessa qualità, altri hanno caratteristiche molto scadenti e potrebbero non funzionare affatto con i prodotti originali.

    Esistono persino schede Arduino che supportano microprocessori che eseguono interpreti JavaScript. Sono rilevanti, prima di tutto, per coloro che vogliono utilizzare il linguaggio Java invece del C. Dopotutto, è più semplice e ti consente di ottenere risultati con maggiore velocità. Tuttavia, queste schede sono più costose rispetto ad Arduino, il che rappresenta uno svantaggio significativo.

    Se stai cercando un hobby e sei interessato a un campo come l'ingegneria elettrica, puoi tranquillamente scegliere Arduino per questo. Questo hobby ha molti vantaggi. Svilupperai intellettualmente, poiché questa attività richiederà che tu abbia conoscenze in diverse aree.

    Oltre all'intrattenimento, il tuo hobby ti aiuterà a creare molti prodotti utili che potrai utilizzare per semplificarti la vita di tutti i giorni. Ogni volta troverai sempre più nuovi modi per usare la tua passione.

    Padroneggiare questa attività non sarà così difficile, grazie alla disponibilità di un gran numero di libri di testo ed esercitazioni. In futuro troverai molte persone che la pensano allo stesso modo in tutto il mondo che condivideranno le loro conoscenze con te e ti daranno l'incentivo per fare nuovi esperimenti!

    " presenta il corso di formazione "Arduino per Principianti". La serie è composta da 10 lezioni, oltre a materiale aggiuntivo. Le lezioni includono istruzioni di testo, foto e video didattici. In ogni lezione troverai un elenco dei componenti richiesti, un elenco dei programmi e uno schema di collegamento. Una volta completate queste 10 lezioni di base, potrai passare a modelli più interessanti e alla costruzione di robot basati su Arduino. Il corso è rivolto ai principianti; per iniziarlo non sono necessarie ulteriori conoscenze di ingegneria elettrica o robotica.

    Brevi informazioni su Arduino

    Cos'è Arduino?

    Arduino (Arduino) è una piattaforma informatica hardware, i cui componenti principali sono una scheda input-output e un ambiente di sviluppo. Arduino può essere utilizzato per creare oggetti interattivi autonomi o connettersi a software in esecuzione su un computer. Arduino è un computer a scheda singola.

    Come sono collegati Arduino e i robot?

    La risposta è molto semplice: Arduino è spesso usato come cervello robotico.

    Il vantaggio delle schede Arduino rispetto a piattaforme simili è il prezzo relativamente basso e la distribuzione quasi diffusa tra gli amatori e i professionisti della robotica e dell'ingegneria elettrica. Una volta entrato in Arduino, troverai supporto in qualsiasi lingua e persone che la pensano allo stesso modo che risponderanno alle tue domande e discuteranno dei tuoi sviluppi.

    Lezione 1. LED lampeggiante su Arduino

    Nella prima lezione imparerai come collegare un LED ad un Arduino e controllarlo affinché lampeggi. Questo è il modello più semplice ed elementare.

    Diodo ad emissione luminosa- un dispositivo a semiconduttore che crea radiazione ottica quando viene attraversato da una corrente elettrica nella direzione in avanti.

    Lezione 2. Collegamento di un pulsante su Arduino

    In questo tutorial imparerai come collegare un pulsante e un LED ad un Arduino.

    Quando si preme il pulsante il LED si accende; quando si preme il pulsante non si accende. Questo è anche il modello base.

    Lezione 3. Collegamento di un potenziometro su Arduino

    In questo tutorial imparerai come collegare un potenziometro ad Arduino.

    Potenziometro- Questo resistore con resistenza regolabile.I potenziometri sono utilizzati come regolatori di vari parametri: volume del suono, potenza, tensione, ecc.Questo è anche uno degli schemi di base. Nel nostro modello ruotando la manopola del potenziometroLa luminosità del LED dipenderà.

    Lezione 4. Servocontrollo su Arduino

    In questo tutorial imparerai come collegare un servo ad un Arduino.

    Servoè un motore la cui posizione dell'albero può essere controllata impostando l'angolo di rotazione.

    I servi vengono utilizzati per simulare vari movimenti meccanici dei robot.

    Lezione 5. LED a tre colori su Arduino

    In questo tutorial imparerai come collegare un LED tricolore ad un Arduino.

    LED tricolore(led rgb) - si tratta di tre LED di colori diversi in un unico alloggiamento. Vengono forniti con un piccolo circuito stampato su cui si trovano i resistori o senza resistori incorporati. La lezione copre entrambe le opzioni.

    Lezione 6. Elemento piezoelettrico su Arduino

    In questa lezione imparerai come collegare un elemento piezoelettrico ad un Arduino.

    Elemento piezoelettrico- un convertitore elettromeccanico che traduce tensione elettrica nella vibrazione della membrana. Queste vibrazioni creano il suono.

    Nel nostro modello, la frequenza del suono può essere regolata impostando i parametri appropriati nel programma.

    Lezione 7. Fotoresistore su Arduino

    In questa lezione del nostro corso imparerai come collegare una fotoresistenza ad Arduino.

    Fotoresistore- un resistore la cui resistenza dipende dalla luminosità della luce che lo colpisce.

    Nel nostro modello il LED si accende solo se la luminosità della luce sopra la fotoresistenza è inferiore ad un certo valore; tale luminosità può essere regolata nel programma.

    Lezione 8. Sensore di movimento (PIR) su Arduino. Invio automatico di e-mail

    In questa lezione del nostro corso imparerai come collegare un sensore di movimento (PIR) ad Arduino e come organizzare l'invio automatico di e-mail.

    Sensore di movimento (PIR)- sensore ad infrarossi per rilevare il movimento o la presenza di persone o animali.

    Nel nostro modello, quando riceve un segnale relativo al movimento umano da un sensore PIR, Arduino invia un comando al computer per inviare un'e-mail e la lettera viene inviata automaticamente.

    Lezione 9. Collegamento di un sensore di temperatura e umidità DHT11 o DHT22

    In questa nostra lezione imparerai come collegare un sensore di temperatura e umidità DHT11 o DHT22 ad un Arduino e acquisirai familiarità con le differenze nelle loro caratteristiche.

    Sensore di temperatura e umiditàè un sensore digitale composito costituito da un sensore di umidità capacitivo e un termistore per la misurazione della temperatura.

    Nel nostro modello, Arduino legge le letture del sensore e visualizza le letture sullo schermo del computer.

    Lezione 10. Collegamento di una tastiera a matrice

    In questa lezione del nostro corso imparerai come collegare una tastiera a matrice a una scheda Arduino e anche a conoscere vari circuiti interessanti.

    Tastiera a matrice inventato per semplificare la connessione di un gran numero di pulsanti. Tali dispositivi si trovano ovunque: nelle tastiere dei computer, nelle calcolatrici e così via.

    Lezione 11. Collegamento del modulo orologio in tempo reale DS3231

    Nell'ultima lezione del nostro corso imparerai come collegare un modulo orologio in tempo reale della famiglia
    DS alla scheda Arduino e anche conoscere vari circuiti interessanti.

    Modulo orologio in tempo reale- si tratta di un circuito elettronico atto alla registrazione di dati cronometrici (ora corrente, data, giorno della settimana, ecc.), ed è un sistema costituito da una fonte di alimentazione autonoma e da un dispositivo di registrazione.

    Applicazione. Cornici già pronte e robot Arduino


    Puoi iniziare a imparare Arduino non solo dalla scheda stessa, ma anche acquistando un robot completo e già pronto basato su questa scheda: un robot ragno, un'auto robot, un robot tartaruga, ecc. Come modo È adatto anche a chi non è particolarmente attratto dai circuiti elettrici.

    Acquistando un modello di robot funzionante, ad es. infatti, un giocattolo high-tech già pronto può risvegliare l'interesse per il design indipendente e la robotica. L'apertura della piattaforma Arduino ti consente di realizzare nuovi giocattoli con gli stessi componenti.

    Un'altra opzione è acquistare il telaio o il corpo di un robot: una piattaforma su ruote o un binario, un umanoide, un ragno, ecc. In questo caso, dovrai occuparti tu stesso dell'imbottitura del robot.

    Applicazione. Rubrica mobile


    – un assistente per sviluppatori di algoritmi per la piattaforma Arduino, il cui scopo è dare all'utente finale la possibilità di avere un set mobile di comandi (libro di consultazione).

    L'applicazione è composta da 3 sezioni principali:

    • Operatori;
    • Dati;
    • Funzioni.

    Dove acquistareArduino


    Kit Arduino

    Il corso verrà aggiornato con lezioni aggiuntive. Seguici

    Storicamente, la parte software Arduino consisteva in un ambiente software integrato (IDE) che consentiva di scrivere, compilare e caricare il codice scritto sull'hardware. L'ambiente ArduinoIDE e lo stesso linguaggio Wiring si basano principalmente su Processing e indirettamente su C/C++. In effetti, l'IDE di Arduino è un grande miscuglio, non per divertimento, ma per comodità.

    Anche esternamente eArduinoIDE eLe lavorazioni sono simili


    In cosa consiste il programma (schizzo)?
    Ogni programma, non importa quanto possa sembrare complesso, è costituito da set separati blocchi codice, indicato dalle parentesi graffe (). Un programma minimo richiede solo 2 blocchi: setup e loop. La loro presenza è obbligatoria in qualsiasi programma C++ per Arduino, altrimenti potresti ricevere un errore in fase di compilazione.
    void setup() ( ) void loop() ( )
    Nella funzione setup() si verificano le impostazioni iniziali di variabili e registri. Una volta completato setup(), il controllo passa alla funzione loop(), che è un ciclo infinito scritto nel corpo (tra ( ) ). Sono questi comandi che eseguono tutte le azioni algoritmiche del controller.

    Hardware "Ciao, mondo! - LED lampeggiante.
    Ciò che dà inizio alla prima conoscenza di Arduino nell'interfaccia tra software e hardware è il LED lampeggiante.


    Per prima cosa devi integrare il programma minimo. Per Arduino (ad esempio UNO), colleghiamo un LED al pin 12 e GND (il colore del LED stesso viene scelto in base alle preferenze personali).

    Void setup() ( pinMode(12, OUTPUT); ) void loop() ( digitalWrite(12, HIGH); ritardo(100); digitalWrite(12, LOW); ritardo(900); )
    Fai Ctrl+C -> Ctrl+V, compila, carica, controlla. Vediamo uno spettacolo di luci che non dura più di un secondo. Scopriamo perché questo accade.

    Ne abbiamo aggiunti diversi ai blocchi precedentemente vuoti espressioni . Sono stati posizionati tra le parentesi graffe delle funzioni setup e loop.
    Ogni espressione è un'istruzione per il processore. Le espressioni all'interno di un blocco vengono eseguite una dopo l'altra, rigorosamente in ordine, senza pause o cambi. Cioè, se stiamo parlando di uno specifico blocco di codice, può essere letto dall'alto verso il basso per capire cosa si sta facendo.

    Cosa succede tra{ } ?
    Come sai, i pin di Arduino possono funzionare sia come output che come input. Quando vogliamo controllare qualcosa, dobbiamo trasferire il pin di controllo nello stato di uscita. Questo viene fatto mediante l'espressione nella funzione impostare:
    pinModalità(12, USCITA); In questa situazione, l'espressione esegue chiamata di funzione . In pinMode, il pin specificato dal numero è impostato sulla modalità specificata (INPUT o OUTPUT). Di quale pin e di quale modalità stiamo parlando è indicato tra parentesi, separati da virgole. Nel nostro caso, vogliamo che il dodicesimo pin funga da uscita. OUTPUT significa uscita, INPUT significa ingresso. Vengono chiamati valori qualificanti come 12 e OUTPUT argomenti della funzione . Il numero di argomenti di una funzione dipende dalla natura della funzione e dalla volontà del suo creatore. Le funzioni non possono avere argomenti, come nel caso di setup e loop.

    Successivamente passiamo al blocco loop, in ordine:
    -chiama la funzione integrata digitalWrite. È progettata per applicare uno zero logico (LOW, 0 volt) o uno logico (HIGH, 5 volt) a un determinato pin. Alla funzione digitalWrite vengono passati due argomenti: il numero del pin e il valore logico.
    - richiamare la funzione di ritardo. Anche questa è una funzione integrata che fa “sospendere” il processore per un certo periodo. Basta un solo argomento: il tempo in millisecondi trascorso per dormire. Nel nostro caso è 100 ms. Non appena scadono i 100 ms, il processore si sveglia e passa immediatamente all'espressione successiva.
    - chiama la funzione integrata digitalWrite. Solo che questa volta il secondo argomento è BASSO. Cioè, impostiamo uno zero logico sul 12° pin -> applichiamo 0 volt -> spegniamo il LED.
    - richiamare la funzione di ritardo. Questa volta “dormiamo” un po’ più a lungo – 900 ms.

    Non appena viene eseguita l'ultima funzione, il blocco del ciclo termina e tutto si ripete. In effetti, le condizioni presentate nell'esempio sono abbastanza variabili e puoi giocare con i valori di ritardo, collegare diversi LED e creare qualcosa come un semaforo o un lampeggiatore della polizia (tutto dipende dall'immaginazione e dalla volontà del creatore).

    Invece di una conclusione, qualcosa sulla pulizia.
    In effetti, tutti gli spazi, le interruzioni di riga e i caratteri di tabulazione non significano molto per il compilatore. Dove c'è uno spazio può esserci un'interruzione di riga e viceversa. Infatti, 10 spazi di fila, 2 interruzioni di riga e altri 5 spazi equivalgono a uno spazio.


    Con l'aiuto dello spazio vuoto, puoi rendere il programma comprensibile e visivo o, al contrario, sfigurarlo oltre il riconoscimento. Ad esempio, il programma di esempio può essere modificato in questo modo:

    void setup() ( pinMode(12, OUTPUT); ) void loop () ( digitalWrite(12,HIGH); ritardo(100); digitalWrite(12,LOW); ritardo(900); )

    Per evitare che qualcuno possa sanguinare dagli occhi durante la lettura, puoi seguire alcune semplici regole:


    1. Sempre, all'inizio di un nuovo blocco in mezzo( E ) aumentare la rientranza. In genere vengono utilizzati 2 o 4 spazi. Scegli uno dei valori e attieniti ad esso per tutto il tempo.

    Void loop() ( digitalWrite(12, ALTO); ritardo(100); digitalWrite(12, BASSO); ritardo(900); )
    2. Proprio come nel linguaggio normale: metti uno spazio dopo la virgola.

    scrittura digitale(12, ALTA);
    3. Posiziona il carattere di inizio blocco (su una nuova riga al livello di rientro corrente o alla fine di quella precedente. E il carattere di fine blocco) su una riga separata al livello di rientro corrente:

    void setup() (pinMode(12, OUTPUT); ) void setup() (pinMode(12, OUTPUT); )
    4. Utilizza le righe vuote per separare i blocchi di significato:

    void loop() ( digitalWrite(12, ALTO); ritardo(100); digitalWrite(12, BASSO); ritardo(900); digitalWrite(12, ALTO); ritardo(100); digitalWrite(12, BASSO); ritardo( 900); )
    5. Affinché tuo figlio possa divertirsi leggendo, ci sono i cosiddetti commenti. Questi sono costrutti nel codice del programma che vengono completamente ignorati dal compilatore e contano solo per la persona che lo legge. I commenti possono essere su più righe o su una riga:

    /* questo è un commento su più righe */ // questo è un commento su una sola riga

    I migliori articoli sull'argomento