Top Banner
37

PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

Feb 15, 2019

Download

Documents

donhan
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent
Page 2: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent
Page 3: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent
Page 4: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent
Page 5: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent
Page 7: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

What’s Arduino?

[wikipedia]Benché gli schemi hardware e il sorgente software siano resi disponibili con licenze copyleft, il nome Arduino e il logo sono marchi registrati e possono essere usati solo dietro permesso. Il documento che esprime la politica d'uso del nome "Arduino" mette l'accento su come il progetto sia aperto a incorporare lavori altrui nel prodotto ufficiale.

Quale conseguenza di queste convenzioni sulla protezione del nome, un gruppo di utilizzatori ha effettuato un "fork" (nel senso esteso del termine) dell'Arduino Diecimila, distribuendo una scheda equivalente chiamata "Freeduino"; il nome volutamente non è registrato ed è quindi liberamente utilizzabile.

Page 8: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent
Page 9: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent
Page 10: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent
Page 11: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

Linguaggio

void setup() {// UNA SOLA VOLTA all’inizio...}void loop() {// PER SEMPRE… }

Page 12: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent
Page 13: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent
Page 14: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

Un po’ di esempi

● Blink● AnalogReadSerial● Trasduttore● …….● HANDS ON!….

Page 15: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

void setup() { pinMode(A4,INPUT); pinMode(8,OUTPUT); delay(5000);//occupando la seriale sempre meglio Serial.begin(9600); }

LATO ARDUINO (1)

Vin – pin 8 Vc – pinA4 GND

Page 16: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

void loop() { digitalWrite(8,HIGH); // CARICA for(int i=0;i<1000;i++) //quanti campioni? { int sensorValue = analogRead(A4); delay(100); //campionamento ogni 1/10 s Serial.println(sensorValue); } digitalWrite(8,LOW); // SCARICA for(int i=0;i<1000;i++) { int sensorValue = analogRead(A4); delay(100); Serial.println(sensorValue,DEC); }

LATO ARDUINO (2)

Vin – pin 8 Vc – pinA4 GND

Guardiamo il monitor seriale !

Page 17: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

Processing (1)

Leggo la seriale con Processing e creo un rettangolo proporzionale al dato sulla seriale

rect(40, 0, 45, val/10);

Page 18: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

Processing (2)

Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale

La carica del condensatore!void serialEvent (Serial myPort) { // get the ASCII string:

String inString = myPort.readStringUntil('\n');

if (inString != null) {

… // convert to an int and map to the screen height:

float inByte = float(inString);

inByte = map(inByte, 0, 1023, 0, height);

// draw the line:

stroke(127,34,255);

line(xPos, height, xPos, height - inByte/2);

Page 19: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

... poi … sviluppi e variazioni

… con processing… saveStream() … saveBytes() … saveStrings()

Potremmo...

… salvare i dati su seriale ...… graficare con gnuplot ….… far il fit con gnuplot …… simulare con foglio di calcolo … e confrontare...… usare octave, e fare la simulazione numerica...

… bash + gnuplot ;)bash$ exec 3<> /dev/ttyXXX ; sleep 1bash$ while [ 1 ]; do cat /dev/ttyACM0 | tee -a dati.txt ; donebash$ exec 3<> /dev/ttyXXX ; sleep 1ctrl-c (abbastanza dati!!!!)gnuplot> plot “dati.txt”

Page 20: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent
Page 21: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent
Page 23: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

Ardublock

http://blog.ardublock.com/

Page 24: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

Ardudroid

Page 25: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

… e poi...

● Acquisizione dati / interpretazione fisiche● Controllo processo fisico● Robotica educativa● Fishino, Beic e Water-Hack● … misure ambientali...

Page 26: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

Con il Physical computing da zero alle gare di robotica.

Physical Computing... progettare esperimneti con piccoli strumenti opensource open

hardware

Page 27: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

Con il Physical computing da zero alle gare di robotica.

Si impara Arduino e i suoi sensori

Page 28: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

Con il Physical computing da zero alle gare di robotica.

Si impara la fisica attraverso problemi reali, si capisce cosa significa misurare, sensibilità

Page 29: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

Con il Physical computing da zero alle gare di robotica.

Si imparano i concetti fisici di spazio, tempo, velocità, si fa informatica

Page 30: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

Con il Physical computing da zero alle gare di robotica.

Si impara la fisica attraverso problemi reali, si capisce cosa significa misurare, sensibilità

Page 31: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

Tempi

Curricolari ed extracurricolari

Page 32: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

Il progetto

Nato dal gruppo di potenziamento di fisica, offerto a tutti gli studenti interessati

principalmente 3-4-5 liceo scientifico

Page 33: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

Anatomia: Kit e fisiologia dopo

(due ruote, due motori) etcGroDan

Page 34: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

Tempi e lezioniArduino 1Arduino 2MotoriMontaggioProgrammazione Presentazione garaTre-Quattro giorni

Page 35: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

Considerazioni

Quinte, problema del controllo... ruote che girano

diversamente!

Page 36: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

Unable to handle kernel NULL pointer dereference at virtual address 00000000 printing eip:c0233fa7*pde = 3e9f3067Oops: 0002 [#1]Modules linked in: usb arduino processing gnuplot rcgraphCPU: 0EIP: 0060:[] Not tainted VLIEFLAGS: 00010246 (2.6.9-22.EL)EIP is at sysrq_handle_crash+0x0/0x8eax: 00000063 ebx: c0370db4 ecx: 00000000 edx: 00000000esi: 00000063 edi: 00000000 ebp: 00000000 esp: f7191f60ds: 007b es: 007b ss: 0068Process bash (pid: 2857, threadinfo=f7191000 task=f7b677f0)Stack: c02342d8 c032dc4e c032f105 00000003 00000002 f7b6adc0 00000002 f7191fac c01a8a13 c0362740 c0168205 f7191fac b7de7000 f7b6adc0 fffffff7 b7de7000 f7191000 c01682cf f7191fac 00000000 00000000 00000000 00000001 00000002Call Trace: [] __handle_sysrq+0x58/0xc6 [] write_sysrq_trigger+0x23/0x29 [] vfs_write+0xb6/0xe2 [] sys_write+0x3c/0x62 [] syscall_call+0x7/0xbCode: 4c 11 42 c0 05 00 00 00 c7 05 50 11 42 c0 2f cc 31 c0 c7 05 54 11 42 c0 00 00 00 00 c7 05 58 11 42 c0 00 00 00 00 e9 e5 0b f0 ff 05 00 00 00 00 00 c3 e9 e1 59 f3 ff e9 1e bc f3 ff 85 d2 89

Grazie per l’attenzione

… sorridi, domani sarà peggio … (filosofia di Murphy)

Page 37: PowerPoint Presentation · Processing (2) Leggo la seriale con Processing e grafico una linea alta proporzionale al dato sulla seriale La carica del condensatore! void serialEvent

Grazie e… domande?