Passa ai contenuti principali

PROGRAMMING (EL.4)

Tateo’s Interdisciplinary Lifelong Learning Project
T I L L L
LEARNING - SHARING - NETWORKING
Learning, knowledge sharing and Communities engagement about:
Artificial Intelligence, Extended / Augmented / Virtual / Mixed Reality (XR/AR/VR/MR), Automation, Electronics, Computer Science and Information Technology, Mobile Technologies, Problem Solving & Innovation, Readings, Social Media, Digital Modeling and Simulation, Computer Vision, Work and Soft Skills, Railway.
by Tateo Giovanni Battista
_____________________________
LEARNING
ELECTRONICS

Hardware programming.
La programmazione dell'hardware.

We are talking about: #electronics #microController #Arduino #microComputer #raspberry #robotics #mobile #uav #TILLL #TateoBlog 

SummaryPresentation of the most famous microcontroller and microcomputer, and of some interesting projects that aim to combine the peculiar characteristics of the two in a single product

Presentazione del microcontrollore e del microcomputer più famoso, e di alcuni progetti interessanti che ambiscono ad unire in un unico prodotto le caratteristiche peculiari deI due.

~ o ~

You are >>> HERE <<< within the TILLL project.
Ti trovi >>> QUI <<< all'interno del progetto TILLL.

<TILL> - <LEARNING> - <ELECTRONICS> - <PROGRAMMING>

~ o ~ 


§1. Hardware programming.
La programmazione dell'hardware.


Generally when we talk about programming we imagine the computer context in which we define a series of instructions that implement an algorithm. This generally takes place in front of a computer screen by means of a programming language. Today programming languages have reached such a high level of abstraction that they have almost forgotten the fact that the effect of a line of code does not remain confined to the golden context of software but involves actions on real and concrete electronic circuits, of the hardware so to speak.
Generalmente quando parliamo di programmazione immaginiamo il contesto informatico in cui si definisce una serie di istruzioni che realizzano un algoritmo. Il tutto avviene generalmente davanti allo schermo di un computer per mezzo di un linguaggio di programmazione. Oggi i linguaggi di programmazione hanno raggiunto un livello così elevato di astrazione da aver quasi fatto dimenticare il fatto che l’effetto di linea di codice non resta confinato nel contesto aureo del software ma comporta delle azioni su dei circuiti elettronici reali e concreti, dell’hardware per intenderci.

Generally, "pure" computer scientists never cross the border of the Input / Output ports of their computer. On the other hand, “pure” electronic technicians, accustomed to a low-level interaction with electronic systems, are generally not familiar with the potential offered by modern programming languages. These are two skills that rarely embody in the same person. However, if a way were found to bring the two worlds together, then both disciplines would be enriched.
Generalmente gli informatici “puri” non varcano mai il confine delle porte di Input/Output del proprio computer. Per contro i tecnici elettronici “puri”, abituati ad una interazione a basso livello con i sistemi elettronici, generalmente non hanno dimestichezza con le potenzialità offerte dai moderni linguaggi di programmazione. Queste sono due competenze che raramente si incarnano in una stessa persona. Se tuttavia si trovasse il modo di far incontrare i due mondi, allora entrambe le discipline ne risulterebbero arricchite.

One way to bring computer scientists closer to electronics and electronics to computer science consists of all those didactic board that allow you to interface with the electronic world from the electronic world and vice versa.
Un modo per avvicinare gli informatici all’elettronica e gli elettronici all’informatica è costituito da tutte quelle schede didattiche che permettono di interfacciarsi al mondo elettronico dal mondo elettronico e viceversa.

Arduino and Raspberry Pi are the most popular examples of how electronics can be programmed to make them perform a function. Arduino and Raspberry Pi are two different ideas but with the same spirit. They are born with different intentions, the first is an easily programmable handyman board, especially to control sensors, the second is a microcomputer with an extremely economical ARM processor.
Arduino e Raspberry Pi rappresentano gli esempi più diffusi di come l’elettronica possa essere programmata per farle svolgere una funzione. Arduino e Raspberry Pi sono due idee diverse ma dal medesimo spirito. Essi nascono con intenti diversi, la prima è una scheda tuttofare facilmente programmabile, specie per controllare sensori, il secondo è un microcomputer con processore ARM estremamente economico.


We are talking about: #programming #Arduino #RaspberryPi #singleBoardPC #ARM


References to useful sources for further information:
Riferimenti a fonti utili per approfondimenti.
1. Raspberry Pi vs. Arduino: Which One is Best (for Beginners)?, Tutorials for Raspberry Pi


-----------------------------------------

Last updated August 14, 2022


~ o ~ 


§2. The micro-controller Arduino.

Il microcontrollore Arduino.


“Tinkering is what happens when you try something you don’t quite know how to do, guided by whim, imagination, and curiosity. When you tinker, there are no instructions, but there are also no failures, no right or wrong way of doing things. It’s about figuring out how things work and reworking them.”

Armeggiare è ciò che accade quando provi qualcosa che non sai come fare, guidato dal capriccio, dall'immaginazione e dalla curiosità. Quando armeggi, non ci sono istruzioni, ma non ci sono nemmeno fallimenti, nessun modo giusto o sbagliato di fare le cose. Si tratta di capire come funzionano le cose e rielaborarle.

( cit. Massimo Banzi, one the originators of the Arduino project )


  Programming of micro-controllers can be daunting and frustrating for the untrained. Arduino's goal is to simplify the creation of interactive applications or objects, simplifying the programming language and providing a powerful controller, easy to use but also capable of supporting more complex projects. The name "Arduino" derives from that of a bar in Ivrea which in turn recalls the name of Arduino d'Ivrea, King of Italy in 1002.

 La programmazione dei micro-controllori può essere, per chi non è addestrato, scoraggiante e frustrante. L’obiettivo di Arduino è quello di semplificare la creazione di applicazioni o oggetti interattivi, semplificando il linguaggio di programmazione e fornendo un controller potente, facile da utilizzare ma anche in grado di supportare progetti più complessi. Il nome “Arduino” deriva da quello di un bar di Ivrea che richiama a sua volta il nome di Arduino d'Ivrea, Re d'Italia nel 1002.


Arduino is an open source framework for physical computing. It basically consists of three separate tools grouped together: a micro-controller which is available in different forms, a language and compiler dedicated to creating the code in a simple and intuitive way, and an integrated programming environment (IDE) and processing. The micro-controller is integrated in a printed circuit that contains I / O ports, a voltage regulator and a USB interface that allows, when needed, communication with a computer. The programming language and the compiler are simple and intuitive in order to allow even novices in electronics and computer science to be able to write programs. The language is called Wiring and is derived from the C and C ++ languages, it is freely downloadable from the Internet and can be modified. The integrated development environment (IDE) is multi-platform, meaning it is compatible for Linux, for Apple Macintosh and Windows).

Arduino è un framework open source per il physical computing. Esso e costituito fondamentalmente da tre strumenti separati raggruppati insieme: un micro-controllore che è disponibile in diverse forme, un linguaggio e il compilatore dedicati alla creazione del codice in modo semplice ed intuitivo, e da un ambiente integrato di programmazione (IDE) e di elaborazione. Il micro-controllore è integrato in un circuito stampato che  contiene delle porte I/O, un regolatore di tensione ed un'interfaccia USB che permette, quando occorre, la comunicazione con un computer. Il linguaggio di programmazione ed il compilatore sono semplici ed intuitivi in modo da permettere anche ai novizi in elettronica ed informatica di riuscire a scrivere programmi. Il linguaggio si chiama Wiring ed è derivato dai linguaggi C e C++, è liberamente scaricabile da Internet ed è modificabile. L’ambiente di sviluppo integrato (IDE) è multipiattaforma, ossia è compatibile per Linux, per Apple Macintosh e Windows).


Arduino allows rapid prototyping and quick learning of the fundamental principles of electronics and programming. By allowing those who are not expert in electronics to create functioning computerized systems, the size of a matchbox, and able to interact easily with the hardware, Arduino opens up a whole new world of possibilities for interactive designers and artists.

Arduino permette la prototipazione rapida e l'apprendimento veloce dei principi fondamentali dell'elettronica e della programmazione. Arduino permettendo a chi non è esperto di elettronica, di realizzare sistemi computerizzati funzionanti, delle dimensioni di una scatola di fiammiferi, ed in grado di interagire facilmente con l’hardware, apre un mondo completamente nuovo di possibilità per designer e artisti interattivi.


~ o ~
 
§3. The Raspberry micro personal computer.
Il micro computer Raspberry

Raspberry è un calcolatore implementato su una sola scheda elettronica. Il suo lancio al pubblico è avvenuto alla fine del mese di febbraio 2012. E' distribuito in due versioni di prezzo: $25 e $35 dollari statunitensi. L'idea di base è la realizzazione di un dispositivo economico, concepito per stimolare l'insegnamento di base dell'informatica e della programmazione nelle scuole.


~ o ~ 

§4. UDOO project: Android, Linux and Arduino in a tiny single-board computer.
Progetto UDOO: Android, Linux e Arduino in un minuscolo computer a scheda singola.

Esiste un progetto interessante, denominato UDOO, che ambisce a fondere le caratteristiche di questi due dispositivi, al fine di realizzare un computer super economico e capace di far girare Linux o Android. Il progetto, come era prevedibile, è stato avviato su Kickstarter e nei video creati dai progettisti si mostrano le potenzialità di questo sistema che sarà estremamente flessibile come Raspberry e facilmente programmabile come Arduino. Uno strumento del genere oltre ad essere indirizzato agli hobbisti dell’elettronica, i quali avrebbero modo di realizzare cose ancora più complesse, avrebbe un'importante impronta didattica ad ogni livello.

We are talking about: #android #linux #arduino #singleBoardPC #UDOO #Kickstarter

References to useful sources for further information:
Riferimenti a fonti utili per approfondimenti.
1. UDOO: Android Linux Arduino in a tiny single-board computer, Kickstarter


-----------------------------------------

Last updated August 14, 2022



~ o ~ 


§5. The Coconut Pi underwater robot.
Il Robot subacqueo Coconu Pi.


Alcuni studenti di ingegneria dell'università di Singapore hanno costruito un sottomarino autonomo partendo dal Raspberry Pi. Grazie alla webcam si muove da solo evitando gli ostacoli ed è in grado di seguire percorsi tracciati sul fondo di una piscina.
Sembra che la creatività non conosca limiti quando si parla di Raspberry Pi. L'ultima impresa in ordine di tempo è quella che ha coinvolto un gruppo di studenti di ingegneria della National University of Singapore, che ha usato il mini PC da 35 dollari per fabbricare il Coconut Pi, un veicolo sottomarino autonomo (AUV) in grado di muoversi sott'acqua.
Il Raspberry Pi svolge le attività di elaborazione più impegnative, mentre per il controllo meccanico del mezzo è stato scelto Arduino. Coconut Pi è stato sponsorizzato dal rivenditore inglese RS Components e si è classificato al terzo posto nel concorso 2013 Singapore Autonomous Underwater Vehicle Challenge.
L'AUV è stato in grado nelle dimostrazioni di identificare e seguire una linea nera sul fondo della piscina, oltre che seguire un anello giallo galleggiante in superficie. Per rilevare ed evitare ostacoli Coconut Pi si è servito di una webcam, le cui immagini venivano elaborate proprio dal Raspberry Pi.
L'AUV è inoltre dotato di giroscopi, accelerometri e magnetometri, nonché di sensori di pressione e di flusso. In origine il Coconut Pi era impermeabilizzato con un bellissimo scafo da 800 dollari, che però si è rotto una settimana prima della gara. In mancanza di fondi, è stata usata una scatola trasparente da 16 dollari che ha svolto alla perfezione il compito di isolante.

References to useful sources for further information:
Riferimenti a fonti utili per approfondimenti.
1. Raspberry Pi-powers DIY autonomous underwater vehicleJacqueline Seng
April 10, 2013


-----------------------------------------

Last updated August 14, 2022


~ o ~

§6. References to useful sources for further information.
Riferimenti a fonti utili per approfondimenti.

Listed below are some references to sources (websites, videos and book) that I have consulted during the writing of this article, and that you could also use to learn more about the topics covered in this article. 
Di seguito sono elencati alcuni riferimenti a fonti (siti web, video e libri) che ho consultato durante la stesura di questo articolo e che potresti utilizzare anche tu per approfondire gli argomenti trattati in questo articolo.

  • ( 1 ) Raspberry Pi web site. Blog, downloads, community, help, forums, education.
  • ( 2 ) Arduino, Wikipedia.
  • ( 3 ) Arduino web site. Software, products, learning, forum, support, blog.
  • ( 4 ) Raspberry Pi e Arduino insieme in un robot subacqueo, Elena Re Garbagnati
  • ( 5 ) UDOO su KICKSTARTER : video interessante sulle applicazioni di interaction design: gamification
  • ( 6 ) UDOO web site
  • ( 7 ) Arduino Stepper Motor Control. Learning to control a stepper motor with the Arduino Motor Shield.

~ o ~


§7. More generally about Electronics.
Più in generale a proposito dell'Elettronica.

This article discusses about of the new phenomena like the Makers movement and FabLab that constitute de facto the most exciting applications of modern Electronics. But if you want to examine the entire technology of Electronics from a more general point of view, then I invite you to reading the following article that is the lead one of the thematic area dedicated to this discipline, within the side "Interdisciplinary and Lifelong Learning" side (>), of the "Tateo~Blog" website (>).
Questo articolo discute dei nuovi fenomeni come il movimento dei Makers e il FabLab che costituiscono di fatto le applicazioni più interessanti dell'elettronica moderna. Ma se vuoi esaminare l'intera tecnologia dell'elettronica da un punto di vista più generale, ti invito a leggere il seguente articolo che è il principale dell'area tematica dedicata a questa disciplina, all'interno della parte "Apprendimento Interdisciplinare e Permanente" (>), del sito Web "Tateo~Blog" (>).

Electronics technologies.
Le tecnologie elettroniche.
>>> EL <<<


~ o ~

§8. Stay up to date.
Rimani aggiornato.

If you are interested in the topics covered in the current article and want to be informed about my most recent updates dealing with them, then I invite you to register on the following Facebook page and Pinterest dashboard which I dedicated specifically for sharing the most recent changes made to the corresponding thematic area of TILLL~Learning (>).
Se sei interessato agli argomenti trattati nell'articolo corrente e vuoi essere informato sui miei aggiornamenti più recenti che trattano di essi, allora ti invito a registrarti sulla seguente pagina Facebook e bacheca Pinterest che ho dedicato appositamente per la condivisione delle modifiche più recenti apportate all'area tematica corrispondente di TILLL~Learning (>).


"Electronics by TILLL" on Facebook (>)

"Electronics by TILLL" on Pinterest (>)



~ o ~

§9. Let's keep in touch.
Teniamoci in contatto.

I hope you enjoyed this article, belonging to the Learning (>) section of the Tateo's Interdisciplinary Lifelong Learning (TILLL) project (>), and that the notes and observations I gathered within it meets your interests. If you want stay tuned with the TILLL project evolution, then I invite you to follow the next upgrades that are published on the TILLL's Blog and on the social media pages dedicated to the TILLL community.
Spero che questo articolo, appartenente alla sezione Learning (>) del progetto Tateo's Interdisciplinary Lifelong Learning (TILLL) (>), ti sia piaciuto e che le note e le osservazioni che ho raccolto al suo interno soddisfino i tuoi interessi.  Se vuoi rimanere aggiornato sull'evoluzione del progetto TILLL, allora ti invito a seguire i prossimi aggiornamenti che vengono pubblicati sul Blog di TILLL e sulle pagine social dedicate alla community TILLL.


  (>Tateo-Blogofficial blog of TILLL project

  (>LinkedIn page dedicated to TILLL project

  (>Facebook page dedicated to TILLL project

  (>Twitter account dedicated to TILLL project

  (>Pinterest account dedicated to TILLL project

  (>Instagram account dedicated to TILLL project



~ o ~ 


§10. Something about me, the founder and author of Tateo~Blog Project.

Qualcosa su di me, il fondatore e sull'autore del progetto Tateo~Blog.


First of all, thank you for visiting one of the pages of my project for Interdisciplinary Continuous Learning (TILLL which stands for Tateo's Interdisciplinary LifeLong Learning), of which I am the founder and author.

My name is Giovanni Battista Tateo (shortly Bat).

Innanzitutto ti ringrazio per aver visitato una delle pagine del mio progetto per l'Apprendimento Continuo Interdisciplinare (TILLL che sta per Tateo's Interdisciplinary LifeLong Learning), di cui io sono lil fondatore e l'autore.

Mi chiamo Giovanni Battista Tateo (brevemente Bat).


The Tateo~Blog (link) is an integral part of the project constitutes the means of sharing all updates. 

I was initially an Information Technology expert, and later I became an electronic engineer, specializing in industrial Automation. I'm passionate about Artificial intelligenceVirtual RealitySimulation, and I'm an expert in Artificial Vision applied to industrial Automation. Currently, and starting four years ago, I am employed as a Proposal Engineer at Mer Mec S.p.A. (:::) company. Previously, starting in 2004, I was employed, always at the same company, as a Designer of Artificial Vision Systems and Image Processing Algorithms, applied in particular to Railway Diagnostics. I am a supporter and promoter of Lifelong LearningSocial Networking and Knowledge Sharing by means of the web. If you want more details about me, visit the About Me (:::) page.

Il blog Tateo~Blog (link) è parte integrante del progetto costituisce il mezzo di condivisione di tutti gli aggiornamenti. 

Sono stato in principio un esperto di Informatica, e in seguito sono diventato un Ingegnere Elettronico, specializzato in Automazione Industriale. Sono un appassionato di Intelligenza ArtificialeRealtà VirtualeSimulazione, e sono un esperto di Visione Artificiale applicata all'Automazione Industriale. Attualmente, ed a partire dall'anno 2016, sono impiegato come Proposal Engineer presso la società Mer Mec S.p.A. (:::). Precedentemente, a partire dal 2004, sono stato impiegato, sempre presso la stessa società, come Progettista di Sistemi di Visione Artificiale e di Algoritmi di Elaborazione delle Immagini, applicati in particolare alla Diagnostica Ferroviaria. Sono un sostenitore e promotore dell'apprendimento permanente, dei social network e della condivisione delle conoscenze tramite il web. Se vuoi ulteriori dettagli su di me, visita la pagine About Me (:::).


  Contact me. Following you can find my personal references that you can use if you want to contact me directly, and the links to my social accounts that you can use to follow me or to keep in touch with me by means of social media networks.

  ContattamiPer chi scrive non c’è soddisfazione maggiore di quella che si prova sapendo di essere stato letto e di aver ispirato e fornito esperienze e pratiche utili. Per cui, chiunque contattarmi utilizzando uno dei riferimenti seguenti. Sarò felice di poterti leggere e di confrontarmi con te, di poter leggere le tue critiche, i tuoi suggerimenti, le tue riflessioni e, spreto anche i tuoi complimenti.


Giovanni Battista Tateo (aka Bat)

    - e-mail: tateogb@libero.it (send e-mail)

    - phone / WhatsApp : (+39) 388 8419726

    - LinkedIn account (link)

    - Facebook account (link)

    - Twitter account (link)

    - Instagram account (link)

    - Pinterest account (link)

    - Skype (link)


-----------------------------------------

Originally published January 21, 2017.

Updated August 14, 2022.

into the Learning section of

TILLL

the Lifelong and Interdisciplinary Learning project of Giovanni Battista Tateo

Commenti