Standalone applications


Applicazioni senza PC

StandAlone_V4

Programmando il firmware (come con Arduino), i moduli del sistema Theremino potrebbero funzionare anche senza collegarli a un PC. Informazioni più dettagliate in questa pagina.

Ma noi sconsigliamo il funzionamento senza PC, per non perdere le principali caratteristiche del sistema Theremino: la potenza del PC, il collegamento in real-time tra il software ad alto livello e i componenti hardware di InOut e la facilità di uso.

Esistono sistemi (Arduino e cloni) progettati per applicazioni senza sistema operativo e senza PC, usate quelli.

Ripetutamente ci hanno chiesto di implementare gli Sketch di Arduino.
La risposta breve è: “Non ce n’è bisogno”
La risposta lunga è qui: http://www.theremino.com/blog/robotics-and-cnc#sketch

 


Applicazioni “stand alone” e “real time”

Per sistemi autonomi, ad esempio un quadcottero o un robot, si usano i FlatPC (vedere questa pagina).

FlatPC_2

I FlatPC e i moduli del sistema Theremino, pur lavorando con un vero sistema operativo, sono talmente veloci da essere più “real time” di un microcontrollore real time (ad esempio Arduino). Quindi un FlatPC e alcuni piccoli moduli thereminici possono facilmente controllare il volo e la stabilizzazione di un drone, correggendo la posizione in real time, fino a settecento volte al secondo (che è molto più di quel che serve in pratica e anche di quel che può fare un Arduino con la sua lenta CPU single core).

Fennec_Fox

Inoltre un FlatPC ha tutte le funzioni di base già integrate, e di qualità sufficiente a soddisfare anche l’orecchio più fine.

Più piccolo e leggero, sia di un Raspberry che di un Arduino, il FlatPC ha tutto di serie, in uno spazio piccolissimo. Quindi non si devono aggiungere moduli audio esterni, adattatori Wifi, memorie di massa, relativi cavi di collegamento e ingombranti Shield.


L’immagine seguente mostra un esempio di cosa si deve fare per ottenere un audio di qualità da un Raspberry (esempio tratto dal progetto volumio)

RaspberryDacAudio

E questa immagine mostra come si ottiene un audio di qualità da un FlatPC.

FlatPC_AudioOut

Le due immagini hanno la stessa scala e sono indicative di come si fa in fretta a impegnare volume con i moduli impilati (Piggyback) e con gli Shield. Qui si tratta solo dell’audio, ma se si volessero anche il Wifi, il GPS, il 3G, il Bluetooth e gli ADC a 24 bit, il castello diventerebbe un grattacielo e sarebbe impossibile collocarlo in spazi di forma ragionevole.

Per evitare l’accatastamento dei moduli e facilitare la disposizione dei volumi, il sistema Theremino non prevede Piggyback o Shield con posizioni prefissate, ma sempre cavi flessibili.


Theremino su Rapberry Pi con Raspbian

Attenzione: Queste informazioni sono superate. I piccoli PC con Windows, sono sempre più economici, consumano meno e sono molto più potenti, vedere le comparazioni. Sui FlatPC e TabletPC tutte le nostre applicazioni funzionano con il 100% di efficienza e funzionano subito (non si devono eseguire complicate installazioni).
http://www.theremino.com/downloads/notes-on-software#flatpc

Per gli amanti di Linux e Raspberry Pi abbiamo preparato un Debian per Raspberry, chiamato Raspbian, è disponibile come immagine completa. Quindi niente installazione del sistema operativo, si infila la scheda di memoria e via.

Questo Raspbian, che potremmo chiamare ThereRaspBian, fa girare le applicazioni del sistema Theremino, ma non è facile riuscirci. Si devono installare manualmente molte librerie di Linux e, a seconda delle versioni, alcune applicazioni potrebbero funzionare e altre no.

La velocità di comunicazione USB del Raspberry è ottima, arriva facilmente a 700-800 scambi al secondo. Il processore purtroppo è un po’ lento e ci sono errori (non nostri ma di Linux-Mono) che impediscono di usare il coprocessore matematico. Pertanto le applicazioni più adatte al Raspberry sono i logger lenti. Ad esempio i sistemi meteo, o per i terremoti, che si accontentano di un centinaio di scambi al secondo.

Connettori, datasheets e schemi elettrici di tutti i modelli di Raspi in questo file.


Consumi del Raspberry Pi

Modello B
Solo tastiera    0.38 A - 1.89 W
Tastiera + Wifi  0.43 A - 2.14 W
Modello B+
Solo tastiera    0.25 A - 1.25 W
Tastiera + Wifi  0.30 A - 1.50 W
Solo WebCam      0.30 A - 1.50 W circa (cambia con illuminazione)
Senza USB/LAN    0.15 A - 0.75 W
In shutdown      0.05 A - 0.25 W

Tutti i modelli di Raspberry (A, B e B+) devono essere alimentati con tensione da 4.5 a 5.5 Volt. In caso di alimentazione con pannelli solari, si consiglia di usare un regolatore switching, per ridurre la tensione di batteria con la massima efficienza.

Il Theremino Master e i moduli Slave consumano solo 12 mA. Quindi un Master aumenta il consumo del Raspi di meno del 5%. Se si collegano al Raspi solo la scheda Wifi e il Master, si consuma circa 1 Watt, quindi in totale meno di 100 mA con una batteria a 12 Volt.


Overclock del Raspberry Pi

Il Raspi a 700 MHz è piuttosto lento, ma con 950 MHz va molto meglio. L’overclock si effettua con “RaspiConfig”.

Fino a 950 MHz di overclock la SD Card lavora a 250 MHz, per cui basta una “SD Card classe 4”. Se si imposta il massimo overclock (1 GHz), allora la SD Card viaggia a 500 MHz, e serve una “SD Card Kingston classe 10”.

Con l’overclock il consumo medio non cambia molto, si sale dai normali 300-350 mA fino a un massimo di circa 350-400 mA. Anche con il massimo overclock, bastano piccoli dissipatori per tenere i chip sotto agli 85 gradi, temperatura oltre la quale i chip rallentano automaticamente. Una ventola non è necessaria, ed è meglio non usarla per evitare rumore e polvere.

Per un buon funzionamento la temperatura non deve superare i 70 gradi e la tensione di alimentazione non deve scendere sotto ai 4.8 Volt. Esistono semplici istruzioni in Python per leggere temperatura e tensione, sarebbe quindi utile scrivere una piccola utility. Questa utility dovrebbe memorizzare i valori di picco, ma mostrarli su schermo solo una volta al secondo, per consumare poca CPU.

  1. Paolo says:

    Complimenti per l’ottimo articolo “Un braccio robotico economico con meccanica essenziale”. Mi permetto di scrivere unicamente per chiedere un paio di chiarimenti:

    – Leggendo l’articolo non ho capito se il theremino lavora come arduino, ossia riceve i dati, li elabora e dopo li applica ai servi. Onestamente dal tuo articolo mi sembra di capire che è possibile un controllo in real time, cosa che decisamente metterebbe il sistema theremino a un livello eccezionalmente più alto di arduino.

    – Non ho trovato il file di conversione da disegno a movimenti servo. Per disegnare qualsiasi oggetto, anche 3D, come fai a elaborare un immagine ? Dal sito Theremino si vede un pannello di controllo. Il sistema letto nell’articolo sembra quello delle stampanti 3D , ma a differenza delle ultime , non mi sembra di capire ci sia un software di conversione, ma che piuttosto si vada per tentativi.

    Secondo te un sistema simile (controllo diretto dei servi da pannello di controllo senza dover compilare ogni minima modifica) si poteva ottenere anche con Arduino ? Ho cercato molto materiale ma onestamente non ho trovato nulla.

    Complimenti ancora e in gambissima !!

    • Livio says:

      Theremino non lavora come un Arduino, è più facile da usare, puoi fare di tutto senza programmare. (naturalmente per applicazioni complesse è anche possibile programmare)

      Con il software ThereminoArm è possibile il controllo diretto in real time, anche con il mouse ad esempio. Oppure seguendo quel che dice un file di tipo GCode (o NC o TAP o qualunque file simile)

      I file che vengono usati normalmente sono i GCode (ne trovi molti insieme al ThereminoArm come esempi) e sono semplicissimi, solo un lungo elenco di coordinate X/Y/Z.

      I file GC sono proprio gli stessi che si usano per frese a controllo numerico e Robot e si producono con appositi programmi (programmi per circuiti stampati o per il disegno 3D)

      Tra breve pubblicheremo il software Theremino_ImgToGcode che aiuta a convertire le immagini a tratto in files GCode

      • Paolo says:

        Ho gia’ costruito un braccio, collegato a un modulo Arduino, ma per le ragioni che ti ho esposto si e’ rivelato una grande delusione per applicazioni più industriali. Tutto deve essere pre-programmato e salvato in locale sulla memoria comunque molto limitata.

        Nonostante una community folta, solo alcune versioni di Arduino di fascia commerciale più elevata possono utilizzare librerie dirette, pertanto si trova poco materiale in merito, per lo più video su youtube ma senza codice.

        Mi attrezzo subito per sostituire l’hardware arduino con theremino cosi da dare un riscontro diretto.

        • Livio says:

          La tua applicazione di controllo industriale è interessante e potrebbe offrire buone idee anche ad altri quindi, per piacere, scrivi qui i risultati delle tue prove e come prosegue l’avanzamento delle tue ricerche.

  2. valter procarione says:

    conosco adesso questa idea, thereminio, e credo che sia la cosa più geniale che ho visto per le enormi potenzialità e applicazioni di cui è capace, ma che delusione per la scarsità di materiali disponibili.
    moduli e altre schede base premontate per cominciare, un po’ stile arduino, non sono reperibili nei link presenti nel sito, quello più solido sembra essere pololu.com, ma solo per i 3 assi, dove trovare cose più elementari per iniziare un minimo di propedeutica, anche per iniziative scolastiche?

    • Livio says:

      Arduino esiste da una decina di anni, nei primi anni nessuno lo conosceva e si trovava poco materiale anche per lui. Il sistema Theremino esiste da poco, e fa molta fatica a farsi conoscere. Il problema maggiore è che esiste già Arduino, che riempie ogni spazio possibile e ha mezzi di marketing incomparabilmente superiori.

      Altri motivi che rendono il sistema Theremino “diverso” sono:
      – Che non siamo minimamente interessati al guadagno e a ogni forma di marketing.
      – Che non desideriamo vengano scritti libri sul sistema Theremino (esiste già tutto sul sito ed è libero per tutti)
      – Che non ci fa piacere avere rapporti con riviste famose a pagamento (che il pagamento sia palese o occulto non importa)

      In sostanza il sistema Theremino non si occupa di produzione, spiega solo “come si fa”, e vuole mantenere le conoscenze libere per tutti, sempre gratuite e direttamente consultabili, senza intermediari.

      Tutto questo è ben spiegato qui:
      http://www.theremino.com/contacts/environmental-protection
      http://www.theremino.com/contacts/the-theremino-mission

      Per quel che riguarda i componenti siamo a conoscenza che stanno nascendo nuovi produttori. I quali promettono di tenere a catalogo tutto, ma proprio tutto, per il sistema Theremino (fino ai particolari, gli stampati, le viti, i cavi e i kit).

      Noi non abbiamo nessun rapporto commerciale con loro, ma da quel che si legge sul loro sito, sembra promettere bene:
      http://thereminostore.com

  3. faxim says:

    Scusate, ma al posto di esaltare i difetti di Arduino e Raspberry (che poi difetti non sono), non potreste limitarvi ad elencare i pregi di Theremino senza paragoni con le altre piattaforme?
    Mi spiace, ma leggendo questa pagina mi è sembrato che l’editore abbia sminuito arduino e raspberry, cadendo anche su affermazioni alquanto discutibili. Conosco piuttosto bene sia theremino che arduino che raspberry, e sono certo che ognuna di queste piattaforme ha un proprio punto di forza diverso dalle altre. Non c’è bisogno di cantare i difetti altrui per far vedere che si è forti.

    • Livio says:

      Non lo hai scritto ma probabilmente ti riferisci a queste tabelle:
      http://www.theremino.com/downloads/notes-on-software#comparation

      Le tabelle di confronto tra i tre sistemi non servono per stabilire un “vincitore” ma per indirizzare i makers verso la piattaforma più adatta al loro progetto. Tu non ne hai bisogno, dato che conosci bene tutte e tre le piattaforme, ma a molti possono essere utili.

      Esistono casi in cui Arduino è preferibile e molto spesso, decine e decine di volte, abbiamo consigliato di non utilizzare Theremino perché Arduino è più adatto.

      Probabilmente non stai tenendo conto di un fatto importante: Arduino e Raspberry sono sistemi commerciali, invece noi siamo completamente “NoProfit”. Il sito thereminostore è gestito da cinesi che non ci pagano, per cui non ci importa niente se vendono poco o tanto.

      Se tieni conto di questo e rileggi quanto abbiamo scritto, ti accorgerai che sono solo considerazioni tecniche. Più o meno come i consigli su quale stagno e quale saldatore usare.

      Se trovi qualche affermazione realmente sbagliata scrivila qui e la correggeremo subito. Se invece sono solo “discutibili”, siamo qui per questo. Scrivi la tua versione, qui c’è libertà di pensiero e ogni contributo è utile e benvenuto.

  4. NdK says:

    Il sistema mi pare carino, peccato che preveda l’uso di un pc con windows, che aumenta sensibilmente i costi e riduce l’affidabilità. Personalmente preferisco sistemi meno “inutilmente potenti” (Arduino Uno, ESP8266), ma talvolta un processore più performante può fare comodo.

    Tra l’altro il sito thereminostore.com pare scomparso, purtroppo… Sarebbe molto utile anche se venisse indicato dove trovare i flat pc… Un solo fornitore non aiuta sicuramente!

    • Claudio says:

      Dal mio punto di vista theremino è differente da arduino, ha una notevole maggiore elasticita di utilizzo diretto. Provai anche con arduino, ma ho avuto troppe difficolta e lentezza, sara sicuramente anche dovuto alla mia ignoranza, ma theremino mi ha reso tutto piu semplice e diretto con costi notevolmente ridotti ed un supporto tecnico da parte dello staff theremino in primis Livio che è a dir poco pazzesca, per velocità di comunicazione in senso esageratamente altruistico a 360′. Ho utilizzato ed utilizzo anche ed ancora un windows vista e nonostante tutto non ho mai ancora avuto nessun intoppo considerevole. Ti consiglio vivamente di testare questo interessantissimo sistema.

    • Livio says:

      Il sito thereminostore è in cina e spesso funziona male. Se ti da problemi puoi utilizzare http://www.thereminoshop.com che è negli stati uniti e risponde subito.

      I Tablet economici, ma quad core velocissimi e con Windows10, si trovano su eBay o anche su Amazon. E con un tablet hai anche un ottimo pannello touch screen, nonché le schermo e anche le batterie, e il caricabatterie, e il Wifi, e l’audio, e gli altoparlanti stereo, e il bluetooth, e due porte USB, e ram e hard disk a volontà. Se aggiungi anche solo una parte di queste opzioni ad Arduino poi ci metti un anno a far funzionare insieme tutti gli shield, ma più probabilmente non ci riesci proprio e lasci perdere. Inoltre l’accrocchio finale sarebbe molto più grosso e ti costerebbe più di un Tablet.

      Oppure potresti utilizzare un Meegopad come spiegato in questa pagina:
      http://www.theremino.com/downloads/notes-on-software#availability

Leave a Reply

Your email address will not be published.