Pages: 1 [2]   Go Down
Author Topic: Acune domande a seguito workshop Trento.  (Read 1448 times)
0 Members and 1 Guest are viewing this topic.
Italia
Offline Offline
Newbie
*
Karma: 2
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

si mi ricordo di te!

comunque se ne parlava ogni tanto del fatto che il chip non mantenesse la programmazione me non se ne è mai scoperto il motivo razionale.

prova a caricare uno sketch diverso!

Avevo provato in tempo di workshop il primo giorno, durante le prove dei vari sketch per i led, ma continuava a darmi questo problema.

Probabilmente ho il chip sfigato.
Logged

Linux per sempre............

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 325
Posts: 22498
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

comunque se ne parlava ogni tanto del fatto che il chip non mantenesse la programmazione me non se ne è mai scoperto il motivo razionale.
Se ne è parlato tempo fa e si capì la questione, e cioè che era quello che dicevo, un problema di accoppiamento di bootloader per schede non corrispondenti.
Nel caso specifico, se si usava l'Optiboot su una 2009: l'Optiboot restava in attesa di un carattere in arrivo dalla seriale, che non arrivava e resettava la scheda. Ma era un problema dei vecchi Optiboot. Sulle UNO R3 non dovrebbe esserci.
Ma tu vedi comportamenti strani del led integrato, per caso? Lampeggia di continuo una volta data l'alimentazione?
Logged


ivrea (to)
Offline Offline
Faraday Member
**
Karma: 77
Posts: 4620
miaaao ^-^
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hai provato anche con l'IDE 1.0.5 ?   Tanto non hai la Due.
Logged

my name is IGOR, not AIGOR

BZ (I)
Offline Offline
Brattain Member
*****
Karma: 249
Posts: 21199
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ciao Simone_G
Visto che Mirco non é intervenuto nella discussione gli ho spedito un email con la richiesa di vedere cosa é da fare.
Visto che l' Arduino che hai ricevuto all'interno del starter kit é uno originale deve funzionare e il fatto che non tiene lo sktech in memoria é un guasto.

Comunque ultimo test.
Quando hai caricato lo sketch avevi collegato per caso un LED al pin 13 SENZA resistenza? Togli tutto da Arduino e riprova.

Altre risposte alle Tue domande.
La 1) Ti ho giá risposto.
2) La memoria FLASH (come anche la memoria EEPROM del Controller ATmega328P montato sul Arduino UNO) hanno un numero di cancellazioni / riscritture garantite dove viene anche garantito per quanto tempo i dati rimangono nella memoria senza alimentazione e senza modificarsi. Queste specifiche le trovi nel datasheet ( http://www.atmel.com/Images/doc8161.pdf ) sulla prima pagina. Non devi leggerlo ma per la completezza dell informazione cito e metto il link del documento. Lí é scritto:
* Write/Erase Cycles: 10,000 Flash/100,000 EEPROM
* Data retention: 20 years at 85°C/100 years at 25°C
Per un uso normale ( qualche decina di Upload durante una sessione di lavoro) arrivi a ca 3 anni se ci lavori ogni giorno.

3) L' elettronica di potenza é un campo piú complicato di quello digitale.
Per alimentare e poter modificare la velocitá di rotazione di grandi motori si usa oggigiorno dei inverter. L' alimentazione 230V viene raddrizzata e con dei transistori/MOSFET o IGBT (un transistore di potenza che viene pilotato da un MOSFET integrato) viene prodotta un sistema di alimentazione trifase che alimenta il motore. Sono circuiti che non ti costruisci ma che compri giá fatti. La modulazione PWM puoi usarla solo con tensione continua. Con tensione alternata usi altri modalitá come phase fired control ( http://en.wikipedia.org/wiki/Phase_fired_controllers ) (si accende il l'alimentazione non quando incomincia la semionda ma piu tardi. é un metodo che produce molti disturbi e percui viene usato con utenza di piccola potenza, centinaia di W) oppure il pilotaggio a treni di pacchetti ( fai passare sempre pacchetti di una o piú semionde complete). Entrambe questi pilotaggi puoi realizzare con Tiristori o Triac. Un tiristore é un diodo che puoi accendere. Si spegne da solo quando la corrente diventa zero. La corrente in un alimentazione 230 alternata diventa zero ogni 10 mS (50Hz). Il Triac sono 2 Tiristori messi insiem in modo da poter funzionare con tensione alternata.

4) com dice yoshi93 il diodo che devi mettere con se piloti induttanze ( motori, relé, valvole elettromeccaniche, elettrocalamite ecc) serve per cortocicuitare la tensione inversa indotta quando spegni l'induttanza. In questo modo questa tensione indotta non puó danneggiare l' elettronica di pilotaggio.

Ciao Uwe
 
« Last Edit: July 11, 2013, 01:30:22 am by uwefed » Logged

0
Offline Offline
Edison Member
*
Karma: 24
Posts: 2288
Have you mooed today?
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao

Quote
Visto che Mirco non é intervenuto nella discussione gli ho spedito un email con la richiesa di vedere cosa é da fare.

il forum è stato più veloce di me a rispondere a tutte le domande a cui avrei potuto contribuire  smiley-mr-green
Relativamente invece alla board, ci son degli step da seguire per avere la sostituzione, e ti aggiornerò ovviamente via pm  smiley

EDIT
aggiornato
« Last Edit: July 11, 2013, 05:19:11 am by pitusso » Logged

0
Offline Offline
Shannon Member
****
Karma: 129
Posts: 10447
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

comunque se ne parlava ogni tanto del fatto che il chip non mantenesse la programmazione me non se ne è mai scoperto il motivo razionale.
Se ne è parlato tempo fa e si capì la questione, e cioè che era quello che dicevo, un problema di accoppiamento di bootloader per schede non corrispondenti.
Nel caso specifico, se si usava l'Optiboot su una 2009: l'Optiboot restava in attesa di un carattere in arrivo dalla seriale, che non arrivava e resettava la scheda. Ma era un problema dei vecchi Optiboot. Sulle UNO R3 non dovrebbe esserci.
Ma tu vedi comportamenti strani del led integrato, per caso? Lampeggia di continuo una volta data l'alimentazione?

un'altra è che sei finito nel "loop del watchdog", anceh questo un problema con vecchie versioni del boot-loader
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Italia
Offline Offline
Newbie
*
Karma: 2
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ciao Simone_G
Visto che Mirco non é intervenuto nella discussione gli ho spedito un email con la richiesa di vedere cosa é da fare.
Visto che l' Arduino che hai ricevuto all'interno del starter kit é uno originale deve funzionare e il fatto che non tiene lo sktech in memoria é un guasto.

Comunque ultimo test.
Quando hai caricato lo sketch avevi collegato per caso un LED al pin 13 SENZA resistenza? Togli tutto da Arduino e riprova.

Altre risposte alle Tue domande.
La 1) Ti ho giá risposto.
2) La memoria FLASH (come anche la memoria EEPROM del Controller ATmega328P montato sul Arduino UNO) hanno un numero di cancellazioni / riscritture garantite dove viene anche garantito per quanto tempo i dati rimangono nella memoria senza alimentazione e senza modificarsi. Queste specifiche le trovi nel datasheet ( http://www.atmel.com/Images/doc8161.pdf ) sulla prima pagina. Non devi leggerlo ma per la completezza dell informazione cito e metto il link del documento. Lí é scritto:
* Write/Erase Cycles: 10,000 Flash/100,000 EEPROM
* Data retention: 20 years at 85°C/100 years at 25°C
Per un uso normale ( qualche decina di Upload durante una sessione di lavoro) arrivi a ca 3 anni se ci lavori ogni giorno.

3) L' elettronica di potenza é un campo piú complicato di quello digitale.
Per alimentare e poter modificare la velocitá di rotazione di grandi motori si usa oggigiorno dei inverter. L' alimentazione 230V viene raddrizzata e con dei transistori/MOSFET o IGBT (un transistore di potenza che viene pilotato da un MOSFET integrato) viene prodotta un sistema di alimentazione trifase che alimenta il motore. Sono circuiti che non ti costruisci ma che compri giá fatti. La modulazione PWM puoi usarla solo con tensione continua. Con tensione alternata usi altri modalitá come phase fired control ( http://en.wikipedia.org/wiki/Phase_fired_controllers ) (si accende il l'alimentazione non quando incomincia la semionda ma piu tardi. é un metodo che produce molti disturbi e percui viene usato con utenza di piccola potenza, centinaia di W) oppure il pilotaggio a treni di pacchetti ( fai passare sempre pacchetti di una o piú semionde complete). Entrambe questi pilotaggi puoi realizzare con Tiristori o Triac. Un tiristore é un diodo che puoi accendere. Si spegne da solo quando la corrente diventa zero. La corrente in un alimentazione 230 alternata diventa zero ogni 10 mS (50Hz). Il Triac sono 2 Tiristori messi insiem in modo da poter funzionare con tensione alternata.

4) com dice yoshi93 il diodo che devi mettere con se piloti induttanze ( motori, relé, valvole elettromeccaniche, elettrocalamite ecc) serve per cortocicuitare la tensione inversa indotta quando spegni l'induttanza. In questo modo questa tensione indotta non puó danneggiare l' elettronica di pilotaggio.

Ciao Uwe
 


Per ora ti rispondo a riguardo il led senza resistenza, no quella l'ho sempre messa, forse è l'unica cosa a cui sono stato attentissimo.

Grazie per l'esauriente risposta e per provare il lampeggiamento eventuale all'accensione, provo stasera, grazie a tutti ancora per le risposte.
Logged

Linux per sempre............

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 325
Posts: 22498
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

un'altra è che sei finito nel "loop del watchdog", anceh questo un problema con vecchie versioni del boot-loader
Anche usando l'Optiboot, che disattiva il watchdog all'avvio, se hai impostato un tempo troppo breve nel ciclo del watchdog ci finisci lo stesso, l'ho sperimentato poco tempo fa  smiley-wink
Logged


0
Offline Offline
Shannon Member
****
Karma: 129
Posts: 10447
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ah, pensavo che avessero risolto disattivanto il watchdog all'avvio del boot-loader.
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Italia
Offline Offline
Newbie
*
Karma: 2
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao a tutti, allora sembra che si sia risolto.

Ho creato questo codice per prova:

Code:
void setup() {
  // put your setup code here, to run once:
  pinMode(13, OUTPUT);

}

void loop() {
 
  for(int i = 1; i <= 3; i++){
  // put your main code here, to run repeatedly:
  digitalWrite(13, HIGH);
  delay(500);
  digitalWrite(13, LOW);
  delay(3000);
  if(i == 3){
    for(int b = 1; b <= 10; b++){
    digitalWrite(13, HIGH);
    delay(500);
    digitalWrite(13, LOW);
    delay(500);
    }
  }
  }
}


L'ho caricato e sembra funzionare..............però ho omesso di dire un particolare.

Ci ho ragionato su, e mi son detto, se il chip si può cambiare, magari è messo male o ha qualche contatto con polvere o umidità, può succedere.
Così ho alzato il chip (core), e l'ho riabbassato un paio di volte, premendo bene che non sia alzato in maniera impercettibile, bè, sembra aver funzionato, infatti dopo aver attaccato l'usb, mi è partito col programma che avevo caricato ieri.
Ho caricato questo secondo programma, quello soprascritto, l'ho caricato, e funzionava, ho tolto l'usb, aspettato 10 secondi canonici, e riattaccato, ed è partito col programma caricato, l'ho riprovato altre due volte lo stacco dell'usb, e direi che ora è a posto.

Se avete suggerimenti per provare che non sia un falso positivo, ditemi pure.
Logged

Linux per sempre............

Italia
Offline Offline
Newbie
*
Karma: 2
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ho ricorretto il codice.........  smiley-kiss

Code:
void setup() {
  // put your setup code here, to run once:
  pinMode(13, OUTPUT);

}

void loop() {
 
  for(int i = 1; i <= 3; i++){
  // put your main code here, to run repeatedly:
  digitalWrite(13, HIGH);
  delay(500);
  digitalWrite(13, LOW);
  delay(3000);
  if(i == 3){
    for(int b = 1; b <= 10; b++){
    digitalWrite(13, HIGH);
    delay(500);
    digitalWrite(13, LOW);
    delay(500);
    }
  }
  }
}


Logged

Linux per sempre............

0
Offline Offline
Shannon Member
****
Karma: 129
Posts: 10447
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

non è che era appoggiataa qualcosa che gli faceva fare corto circuit, come un tavolo di ferro, una graffetta etc?? sempre meglio avere sotto un ripiano di legno, qualche foglio di carta, o quelle spugne antistatiche che ci sono neelle scatole di componenti elettonici per PC
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Italia
Offline Offline
Newbie
*
Karma: 2
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

non è che era appoggiataa qualcosa che gli faceva fare corto circuit, come un tavolo di ferro, una graffetta etc?? sempre meglio avere sotto un ripiano di legno, qualche foglio di carta, o quelle spugne antistatiche che ci sono neelle scatole di componenti elettonici per PC

No è tutto sulla basetta di legno che c'era nello starter kit, quanto al contatto incidentale, può esserci stato, sinceramente non ti so dire, non me ne sono accorto al tempo del workshop, qui a casa no, sono stato attento.
Logged

Linux per sempre............

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 325
Posts: 22498
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Che il chip sembri inserito bene ma che in realtà non lo sia è successo anche a me. Conviene sempre pigiare con un pò di forza, soprattutto se sotto ci sono gli zoccoli a molletta come nel caso dell'Arduino, con cui capitano questi falsi contatti.
Logged


Pages: 1 [2]   Go Up
Jump to: