Pages: 1 ... 9 10 [11] 12 13 ... 24   Go Down
Author Topic: centralina accensione motore  (Read 24048 times)
0 Members and 1 Guest are viewing this topic.
Cagliari, Italy
Offline Offline
Tesla Member
***
Karma: 112
Posts: 7126
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Non ho trovato nessuna breakout board, però.

--> http://www.futurlec.com/SMD_Adapters.shtml

Pighixxx ha una pick & place.  smiley-mr-green --> http://blog.fablabassano.org/
« Last Edit: September 06, 2013, 07:31:10 am by PaoloP » Logged

Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

Offline Offline
Sr. Member
****
Karma: 4
Posts: 396
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

il problema è
secondo voi è umanamente possibile saldare a mano i il micros li sopra?
 smiley-mr-green smiley-mr-green
Logged

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

@Paolo:
per breakout board intendo una scheda con GIA' saldato il chip sopra  smiley-wink
Io non so saldare quel chip  smiley-sweat smiley-sweat

@Lucaleo:
il problema è la saldatura di un chip con uno spazio fra pin e pin di mezzo millimetro  smiley-sweat
Logged


Offline Offline
Sr. Member
****
Karma: 4
Posts: 396
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

@Paolo:
per breakout board intendo una scheda con GIA' saldato il chip sopra  smiley-wink
Io non so saldare quel chip  smiley-sweat smiley-sweat

@Lucaleo:
il problema è la saldatura di un chip con uno spazio fra pin e pin di mezzo millimetro  smiley-sweat

infatti era quello che intendevo ahaha

però magari si può vedere se si trova qualche azienda che ci salda il chip su quelle basette a dei prezzi umani
oppure magari conviene farsele fare e saldare direttamente che comprare quelle e farsi fare le saldature li sopra

ma credete che ci possano essere un po' di penrsone interessate?
realizzare una arduino due standalone credo che permetterebbe di fare un sacco di cose interessanti!!
Logged

Cagliari, Italy
Offline Offline
Tesla Member
***
Karma: 112
Posts: 7126
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

@Leo, io saldo male anche un PDIP.  smiley-sweat

Ma al FabLab dovrebbero avere anche il fornetto reflow. Quindi mette e salda. Servizietto completo.  smiley-mr-green
Logged

Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

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

@Leo, io saldo male anche un PDIP.  smiley-sweat
Ah ah ah  smiley-yell
Beh anch'io non sono un mostro nelle saldature  smiley-wink

Quote
Ma al FabLab dovrebbero avere anche il fornetto reflow. Quindi mette e salda. Servizietto completo.  smiley-mr-green
Sì ma non posso farmi 450 km fra andata/ritorno per saldare un componente  smiley-sweat
I componenti SMD sono stati inventati per far dannare gli hobbysti all'acqua di rose  smiley-twist
Logged


Offline Offline
Sr. Member
****
Karma: 4
Posts: 396
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

@Leo, io saldo male anche un PDIP.  smiley-sweat
Ah ah ah  smiley-yell
Beh anch'io non sono un mostro nelle saldature  smiley-wink

Quote
Ma al FabLab dovrebbero avere anche il fornetto reflow. Quindi mette e salda. Servizietto completo.  smiley-mr-green
Sì ma non posso farmi 450 km fra andata/ritorno per saldare un componente  smiley-sweat
I componenti SMD sono stati inventati per far dannare gli hobbysti all'acqua di rose  smiley-twist

comunque ragazzi secondo me ce la si fa pure a "mano" smiley-grin
se monto un saldatore con una punta molto molto fine sulla struttura di un trapano a colonna (per far salire e scendere il saldatore senza vibrazioni ecc) io penso di poterci riuscire smiley-grin
poi sposto la basetta dal di sotto per allineare il pin che vglio saldare (stile carrelli di una fresa)

certo non è semplice e non è veloce ma secndo me si può fare ahaha
Logged

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 569
Posts: 12576
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

@Leo, io saldo male anche un PDIP.  smiley-sweat
Ah ah ah  smiley-yell
Beh anch'io non sono un mostro nelle saldature  smiley-wink

Quote
Ma al FabLab dovrebbero avere anche il fornetto reflow. Quindi mette e salda. Servizietto completo.  smiley-mr-green
Sì ma non posso farmi 450 km fra andata/ritorno per saldare un componente  smiley-sweat
I componenti SMD sono stati inventati per far dannare gli hobbysti all'acqua di rose  smiley-twist

comunque ragazzi secondo me ce la si fa pure a "mano" smiley-grin
se monto un saldatore con una punta molto molto fine sulla struttura di un trapano a colonna (per far salire e scendere il saldatore senza vibrazioni ecc) io penso di poterci riuscire smiley-grin
poi sposto la basetta dal di sotto per allineare il pin che vglio saldare (stile carrelli di una fresa)

certo non è semplice e non è veloce ma secndo me si può fare ahaha

 smiley-eek-blue spettacolare questa della saldatura a colonna smiley-yell ricordati però di metterlo il saldatore e non lasciare la punta da trapano da 12 smiley-yell smiley-yell
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Offline Offline
Sr. Member
****
Karma: 4
Posts: 396
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

@Leo, io saldo male anche un PDIP.  smiley-sweat
Ah ah ah  smiley-yell
Beh anch'io non sono un mostro nelle saldature  smiley-wink

Quote
Ma al FabLab dovrebbero avere anche il fornetto reflow. Quindi mette e salda. Servizietto completo.  smiley-mr-green
Sì ma non posso farmi 450 km fra andata/ritorno per saldare un componente  smiley-sweat
I componenti SMD sono stati inventati per far dannare gli hobbysti all'acqua di rose  smiley-twist

comunque ragazzi secondo me ce la si fa pure a "mano" smiley-grin
se monto un saldatore con una punta molto molto fine sulla struttura di un trapano a colonna (per far salire e scendere il saldatore senza vibrazioni ecc) io penso di poterci riuscire smiley-grin
poi sposto la basetta dal di sotto per allineare il pin che vglio saldare (stile carrelli di una fresa)

certo non è semplice e non è veloce ma secndo me si può fare ahaha

 smiley-eek-blue spettacolare questa della saldatura a colonna smiley-yell ricordati però di metterlo il saldatore e non lasciare la punta da trapano da 12 smiley-yell smiley-yell

diciamo che dopo molti tentativi senza risultati potrei mettercela la punta... ma da 24 ahahah

michele visto che tu sei molto ferrato (vista la tua guida) che dici, sarebbe molto difficile far funzionare quel micro onboard una volta montato su una basetta che renda i pin umani? smiley-grin
Logged

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 569
Posts: 12576
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Non c'è niente di difficile, c'è solo da fare pratica, se lavori con componenti smd ti serve un saldatore con punta finissima per i componenti passivi e per gli integrati a passo SOIC; dal TSSOP in poi (pin molto più ravvicinati) si usa una punta più larga ed il flussante, esistono su YT migliaia di video che spiegano come si salda.Se anche usi l'adattatore la saldatura smd la devi fare comunque, tanto vale salradrlo direttamente sul PCB.
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Offline Offline
Sr. Member
****
Karma: 4
Posts: 396
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Non c'è niente di difficile, c'è solo da fare pratica, se lavori con componenti smd ti serve un saldatore con punta finissima per i componenti passivi e per gli integrati a passo SOIC; dal TSSOP in poi (pin molto più ravvicinati) si usa una punta più larga ed il flussante, esistono su YT migliaia di video che spiegano come si salda.Se anche usi l'adattatore la saldatura smd la devi fare comunque, tanto vale salradrlo direttamente sul PCB.

beh fare un pcb con quelle piste potrebbe essere complicato per me smiley-grin

sono indeciso se passare al 1284 o fare un enorme balzo al SAM3X8E...
credo che partirò acquistando una board arduino 2 (che sono sei mesi che mi trattengo dal comprare visto che non so manco sfruttare la uno ahaha)
voglio vedere di iniziare a integrare un controllo del carico per l'anticipo
e questo potrei farlo col 1284
ma poi non potrei provare a fare un sistema di iniezione, che con il SAM3X8E ci starebbe alla grande con tutta quella ram e le prestazioni decisamente superiori (avrò bisogno di calcoli più complessi)
è vero non ha eeprom ma pazienza, ce ne metto una esterna o una sd, posso iniziare con la flash in ogni caso ne ha tantissima smiley-grin

ho ottimizzato il codice, più tardi vado a provarlo ma andrà quasi di sicuro
ora nella eeprom metto i valori dell'anticipo che sono molto più leggibili

Code:

#include <EEPROM.h>

  byte arrayMappatura[]={  //array per mappatura






25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  
8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  
7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  
6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  
5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  
4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  
3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  
2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  
1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  



                              
              };

void setup()
{ }

void loop()
{
 for (int i=0; i < 1000; i++){                         //per ogni valore della mappa
  
      EEPROM.write(i, arrayMappatura[i]);                   //inserisci valore 0 mappatura in posizione 0 eeprom fino a valore 999 in posizione 999

      delay(10);
   }
  
}
Logged

Offline Offline
Sr. Member
****
Karma: 4
Posts: 396
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

e il programma della centralina lo trasforma in ritardo in setmapping
ho anche inserito il limitatore di giri alla fine della mappa

Code:

#include <StopWatch.h>
#include <EEPROM.h>

const byte bobina1 = 7;    // output bobina1 su pin7
const byte pin2 = 2;       // interrupt startt
const byte pin3 = 3;       // interrupt stopp

volatile int statestartt = HIGH;    // stato normale startt
volatile int statestopp=HIGH;       // stato normale stopp

StopWatch sw_micros(StopWatch::MICROS);    // timer durata dente
StopWatch sw_micros1(StopWatch::MICROS);   // timer attesa

byte mappatura[1000];      //dichiaro array mappatura
byte ritardo=90;           //dichiaro ritardo
byte cut=0;                //per limitatore rpm
long time = 0;             //valore durata dente microsecondi
long tritardo1 = 0;        //valore durata ritardo in microsecondi

void setup() {
  pinMode(bobina1, OUTPUT);  //bobina
  pinMode(pin2, INPUT_PULLUP);
  pinMode(pin3, INPUT_PULLUP);
  attachInterrupt(0, startt, FALLING);   //interrupt in inizio dente
  attachInterrupt(1, stopp, RISING);     //interrupt fine dente
  SetMapping();                          //compila mappatura[] copiando la eeprom interna
}

void loop()
{

  if(statestartt == LOW){                //se il dente è iniziato
    sw_micros.start();                   //avvia timer durata dente
    statestartt=HIGH;                    // reimposta startt
  }


  if(statestopp == LOW) {                //se il dente è finito
    time=sw_micros.elapsed();            //memorizza durata dente in "time"
    sw_micros1.start();                  //avvia timer attesa
    statestopp = HIGH;                   //reimposta stopp
    sw_micros.reset();                   //azzera timer durata dente

    if(time<250){                        // se il dente dura meno di 250 micros, rpm maggiore di 6666
      cut=1;                             //disabilita accensione candela
    }                                            
    else
      cut=0;                             // se rpm minore di 6666 abilita accensione candela
    if(time>1250){                       // se il dente dura più di 1250 micros, rpm minore di 1333                  
      ritardo=90;                        // anticipo fisso 0°btdc  
    }  
    
    else ritardo=mappatura[time-250];    // se la durata del dente è tra 250 e 1250 micros assegna il valore di ritardo in mappatura
                                         // time-250 trasla time alla posizione esatta in mappa, time=250  250-250=0, verrà usato mappatura[0]

      tritardo1=(time*ritardo)/10;       //calcola durata ritardo in microsecondi, è importante che la moltiplicazione avvenga prima della divisione, genera un errore più piccolo
  }

 
  if(cut==0){                               // se rpm minore di 6666
    if(sw_micros1.elapsed() >= tritardo1){  //se il tempo che è passato dalla fine del dente è maggiore della durata del ritardo
      sw_micros1.reset();                   //azzera timer ritardo

      digitalWrite(bobina1, HIGH);          //scocca scintilla
      
      delayMicroseconds(10);                //attendi

      digitalWrite(bobina1, LOW);           //carica condensatore
      
    }
  }


} // End Loop

void startt()//interrupt startt
{
  statestartt = !statestartt;  //inverti startt
}

void stopp()//interrupt stopp
{
  statestopp = !statestopp;    //inverti stopp
}

void SetMapping()                          //per copia mappatura da eeprom a ram in setup
{
  for (int x; x<1000;x++)                  //per ogni valore della mappatura
  {
    mappatura[x] = 90- EEPROM.read(x);     //converti mappatura anticipo eeprom in mappatura ritardo rispetto a fine dente
                                           // questo solo perchè la mappatura anticipo è più leggibile di quella ritardo
  }                                      
}


« Last Edit: September 07, 2013, 06:39:06 am by lucaleo » Logged

Dueville (VI)
Offline Offline
Edison Member
*
Karma: 28
Posts: 1749
http://cesarecacitti.wordpress.com/
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Io salderei il chippettino con solder cream e aria calda. Un bel chinotto e un adattatore professionale.
Logged

Il Vero Programmatore non ha bisogno di manuali sull'assembler, sono
  sufficienti i data sheet dei microprocessori.

Italy (Venice)
Offline Offline
Edison Member
*
Karma: 25
Posts: 1325
Quello che non c'è non si può rompere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote from: lucaleo
se monto un saldatore con una punta molto molto fine sulla struttura di un trapano a colonna (per far salire e scendere il saldatore senza vibrazioni ecc) io penso di poterci riuscire smiley-grin
poi sposto la basetta dal di sotto per allineare il pin che vglio saldare (stile carrelli di una fresa)
certo non è semplice e non è veloce ma secndo me si può fare ahaha

Non è la tecnica giusta , devi fare dei movimenti specifici con il saldatore e non puramenti perpendicolari al pcb

Mi piace questo tuo lavoro, soprattutto per la velocità con il quale fai le modifiche, sembra che non stai pensando ad altro in questo periodo smiley-grin
Logged

Offline Offline
Sr. Member
****
Karma: 4
Posts: 396
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote from: lucaleo
se monto un saldatore con una punta molto molto fine sulla struttura di un trapano a colonna (per far salire e scendere il saldatore senza vibrazioni ecc) io penso di poterci riuscire smiley-grin
poi sposto la basetta dal di sotto per allineare il pin che vglio saldare (stile carrelli di una fresa)
certo non è semplice e non è veloce ma secndo me si può fare ahaha

Non è la tecnica giusta , devi fare dei movimenti specifici con il saldatore e non puramenti perpendicolari al pcb

Mi piace questo tuo lavoro, soprattutto per la velocità con il quale fai le modifiche, sembra che non stai pensando ad altro in questo periodo smiley-grin

in effetti è così ahaha
complice il fatto che il lavoro quest'anno purtroppo è poco e che il posto di lavoro è lo stesso posto in cui cazzeggio con sta roba smiley-grin
Logged

Pages: 1 ... 9 10 [11] 12 13 ... 24   Go Up
Jump to: