Aiuto progetto maturità

Ciao a tutti,
come si può capire dal titolo ho deciso di portare alla maturità un progetto con arduino,un magazzino verticale ( come questo Modellino Magazzino Automatico [tecnovolt] - YouTube ). Sono alle prime armi con arduino e probabilmente ho puntato un pò troppo in alto ma ormai non posso più cambiare. Nel mio progetto utilizzerò 5 arduino ( 1 MEGA per tastiera e lcd 1 MEGA come master e 3 UNO ( uno per ogni asse x,y,z). Tutti gli arduino dovranno comunicare attraverso RS485 ed è qui che sorge il mio problema, non riesco a trovare una guida che mi spieghi come funziona e quindi come scrivere il programma. Dovrei solamente inviare un dato ( inserito da tastiera) a tutti gli arduino. Se qualcuno può spiegarmi il funzionamento ne sarei molto grato :slight_smile:

ITIS?

Se si, chiedi al prof di TDP ed al prof di Sistemi di illustrarti le RS485. Dalla parte phy ad un minimo di gestione e cablaggi. Questa un prof di TDP la sa da dio, sopratutto la parte protezione da sovra tensioni ed annessi. L'assistente di lab dovrebbe sapere come realizzare il tutto. Una volta fatto cio', sara' tutto piu' semplice, mera manovalanza, cablaggi e codice.

Se invece stai al liceo … sei fregato. Di mera elettronica ed informatica-embedded nessuno sa mai nulla. Da me si faceva il pascal, pensa che quando ho implementato il gioco della roulette la prof di mate grido' alla rivoluzione informatica! Figurati cosa potrebbe dire se le porti un arduino. Magia, illusionismo, prestigibiliminizzazione. Promosso subito con 10 e lode con stretta di mano? Mumble. Nel dubbio ti facciamo bocciato.

In compenso apprezzano di piu' le parte di mate ed inglese, oltre che la mera parte espositiva in italiano.

Attenzione che anche ad ITIS dipende non tanto dal pezzo quando dalla presentazione. Insomma frega poco che funzioni, l'importante e' che la prof di italiano (tipica casalinga di Voghera nei rapporti con la tecnologia, metto la spina, funziona, ne ho consapevolezza dal led che blinka felice) capisca cosa hai fatto, eventuali problemi e soluzioni. Approccio mentale problem solving. Presentazioni brevi per slide.

Ringrazia la Moratti e la Gelmini anche per questo (oltre che per tutti gli altri tagli)

Con la prof di inglese e' quasi sempre la stessa storia. Pero' apprezza di piu' congiuntivi e le preposizioni, quantomeno e' piu' tollerante della prof di italiano.

Coi prof di sistemi ed elettronica invece si va da sciallo totale, proprio vai tra come quando giochi a calcetto e te la giochi in casa. Si, ma solo se sono interni. Se te li becchi da commissione esterna, che puo' benissimo capitare dato che per la scelta dei prof si va al sorteggio, allora c'e' che non ti conoscono, quindi ti giudicano in 10-15 minuti, e conta solo se non vedono cose troppo bislacche nella presentazione.

Nel '99 avevo portato un sistema a micro tipo arduino, molto piu' preistorico, esordendo con - per illustrarne il funzionamento mi serve un terminale, non ho avuto tempo di realizzare una interfaccia utente, quindi usero' questo laptop con Procomm - Avrei potuto dire hyperterminal o qualsiasi altra cosa moderna, compreso arduino con il suo classico serial-monitor. La sola ed unica domanda della prof di italiano - terminale O_o? malato terminale? Appendice? - Inizio' a toccare ferro abbastanza vistosamente - Cos'e' un terminale? - Dicesi terminale … blablabla

E ne fui spiazzato @___@

Grazie per la risposta dally :slight_smile:
si sto frequentando un itis, il problema è che sto frequentando il corso di elettrotecnica e di elettronica non facciamo proprio niente e i miei prof ne sanno meno di me ahah. Potrei chiedere ai professori del corso di elettronica ma volevo vedere se riuscivo a combinare qualcosa durante queste vacanze. Io ho capito il funzionamento generale, ma come già detto non riesco a capire come scrivere il programma. Mi basterebbe qualche esempio ben fatto :wink:

Se non ti serve una comunicazione bidirezionale allora basta che metti un Adattatore RS485 su tutte le seriali e collegi gli Arduini. Il Master manda e Gli slave ascoltano.

Se deve esserci una comunicazione bidimensionale (che penso di aver capito serva visto che l' Arduino con tastiera non é il Master) devi gestire la comunicazione dove il master chiede a un slave una risposta e quello risponde con i dati richiesti mentre gli altri aspettano.

Parecchi BUS hanno come base elettrica la RS485. Potresti usare anche uno di quelli.

Ciao Uwe

grazie uwefed. Si, ci dovrà essere una comunicazione bidimensionale. Ora provo a vedere in base a quello che mi hai detto, vediamo se riesco a fare qualcosa :slight_smile:

Bidirezionale. :slight_smile:
Non bidimensionale.

Buone Feste.

Ma è un requisito obbligatorio del progetto, perché imposto dal prof., usare 5 Arduino ?
Riesci a fare tutto quanto con una singola Mega2560.

Nono non è imposto dal prof. Mi sto basando su progetti già fatti dai dei ragazzi e in entrambi i progetti su cui mi sto basando venivano utilizzati 5 arduino.

Allora sono progetti pensati male, come ti ho detto basta una singola Mega2560 per fare tutto, cosa che ti semplifica non poco il software visto che non ti serve il protocollo di comunicazione seriale tra le varie schede, oltre a ridurre notevolmente il costo complessivo.

A volte dipende.

Per esempio se un progetto e' comune per una intera classe allora ci sono compiti assegnati a gruppi, e non e' sempre facile partizionare mantenendo l'aspetto didattico della cosa.

Nel plan progetto di matura ITIS 2009 in un istituto in cui ho lavorato come sistemista c'era in ballo la progettazione di un sistema di controllo a micro. Non fu pero' scelta una MPU tipo Avr8 Arduino1-Mega, con ADC, DAC, UART, TIMER, GPIO, etc integrati in un solo CHIP ciccio.

Stavano studiando sistemi a micro, in particolare Z80, e la scelta ricadde invece nell'implementazione di varie schede anni '90

una per la CPU Z80@4Mhz + reset + address decoding e glue logic
una per la ram, rom, NvRAM (rigorosamente statica + tampone)
una per l'ADC e DAC, con relativi OA
una per il GPIO, seriale (con baudgen esterno) e timer

4 schede, assegnate a 4 gruppi, 5 persone per gruppo, classe di 24 persone. 4 Mesi di tempo per realizzare il tutto, schedulato con i vari impegni scolastici e considerando che microprocessori fa parte del programma di 5th, ovvero tutto era in apprendimento.

4 schede 1000 fori, con pezze saldate a mano, da cui sono derivate 5 PCB per scheda. 5 prototipi finali, uno per gruppo.

C'era anche un 5th gruppo, composto da 4 persone, quelli con approccio piu' informatico, che si occuparono del firmware (in C ed assembly) e dell'interfacciamento con il PC (in C, C++)

A guardare, prendi una sola persona, un ArduinoMega, un PC: potrebbe fare tutto da sola, in tempi minori, sopratutto considerando l'enorme overhead per la coordinazione dei gruppi.

Pero' sarebbe poco didattico. L'obiettivo non era di sicuro z80 (per altro desueto), ne sistemi di controllo digitali, visto che non era possibile spiegare la trasformata Z, PID digitali, stabilita' in Z ed annessi (difatti nei programmi di 5th si fa il PID analogico, Laplace, nyquist, sintesi del regolatore per poli dominanti ed affini, fermandosi li)

L'obiettivo era lavorare i team per milestone. Riunioni. Una alla settimana. E tutti dovevano sapere tutto dell'intero progetto. Naturale se si fa brain-storming di classe.

Ci fu spazio anche per le slide modi "tesina". Fatte in latek, me ne occupavo proprio io, dando loro asilo politico nel lab linux, altra cosa naturale per non pesare come pesa quel fastidioso dover documentare le cose in corse critiche alla fine del progetto. Quelle cattive abitudini che abbiamo piu' o meno tutti.

In totale abbiamo bruciato 500 euro di budget, 100 euro per ogni prototipo. Un arduino-mega avrebbe tolto uno zero a questa cifra, ma da semplice osservatore posso dire che alla matura l'approccio fu un successone. Tutti soddisfatti.

Mega invidia per loro :smiley: