Board copmuter with "adruino"

Projekti naših članova foruma koji su još uvijek u fazi izrade.

Moderators: pedja089, stojke369, [eDo], trax

User avatar
Black
Odlično uznapredovao
Odlično uznapredovao
Posts: 981
Joined: 17-12-2008, 15:44

Board copmuter with "adruino"

Post by Black »

Nešto što već dugo dugo vremena želim napraviti a nikad nisam imao mogućnosti s čim, tj. uvijek sam se "bojao" mikro kontolera i to svario u glavi kao nuklearnu tehnologiju. Dok nisam naletio na adruino mikrokontroler(tj. njegove kopije) sada većinu svojih ideja mogu realizirati. Pa idem redom ona koja me najviše boli, a to je board comjuter na autu. Na mom "starom" audiu B4, board comjuter u origianlu postoji ali cijena mu je prevelika a funkcije ograničene.
Moj custom board comjuter će biti napravljen sa pro micro atmel i nokia 3310 displayom i imat će funkcije
-Trenutna brzina vozila
-Okretaji motora
-Prosječna potrošnja
-Trenutna potrošnja
-Vanjska temperatura
-Pritisak trubine
-Razina goriva
-Tempomat

Ovo je test i moje prvo programiranej na LCD-u
https://www.youtube.com/watch?v=yU-SPmx7YM0
Posle toga ništan nisam ni programirao jer sam polomio pinove na ekranu.

Spajanje
Senzor brzine,senzor radilice i žica za potrošnju sve informacije idu preko signala tako da ću za to mjerenje koristit funkciju attachInterrupt()

Primjera radi kod koji će služit za mjernje okretaja

Code: Select all

volatile byte half_revolutions;
 unsigned int rpm;
 unsigned long timeold;
 #include <LCD5110_Basic.h>

LCD5110 myGLCD(3,4,5,6,7);

extern uint8_t arduino_logo[];
extern uint8_t oshw_logo[];
extern uint8_t SmallFont[];
extern uint8_t MediumNumbers[];
extern uint8_t BigNumbers[];
int vrijeme = 0;
int sekunde = 0;
 void setup()
 {
   myGLCD.InitLCD();
   Serial.begin(9600);
   attachInterrupt(digitalPinToInterrupt(2), rpm_fun, RISING);
   half_revolutions = 0;
   rpm = 0;
   timeold = 0;
   
 }
 void loop()
 {
   if (half_revolutions >= 10) { 
     //Update RPM every 20 counts, increase this for better RPM resolution,
     //decrease for faster update
     rpm = 15*1000/(millis() - timeold)*half_revolutions;
     timeold = millis();
     sekunde = timeold/1000;
     half_revolutions = 0;
     myGLCD.clrScr();
     vrijeme = timeold / 100;
     Serial.print(rpm,DEC);
     Serial.print("    ");
     
     Serial.print(sekunde);
     Serial.print(".");
     Serial.println(vrijeme);
     
     
     myGLCD.setFont(BigNumbers);
    myGLCD.printNumI(rpm, CENTER, 8);
    myGLCD.setFont(SmallFont);
    myGLCD.print("RPM  ",RIGHT,40);
    
    
   }
 }
 void rpm_fun()
 {
   half_revolutions++;
   //Each rotation, this interrupt function is run twice
 }
Plus što sam tu dodao jedan brojač vremena(koji će mi trebat kada budem računao potrošnju)


Vanjska temperatura,razina goriva i pritisak turbine koriste otpore za mjerenje, tako da će u tu svrhu ići mjernje volateže na ulazu

Code: Select all

#define NUM_SAMPLES 10

int sum = 0;                    // sum of samples taken
unsigned char sample_count = 0; // current sample number
float voltage = 0.0;            // calculated voltage

float napon = 0.0;

void setup()
{
    Serial.begin(10000);
    pinMode(PWMizlaz,OUTPUT);
}

void loop()
{
    // take a number of analog samples and add them up
    
    while (sample_count < NUM_SAMPLES) {
        sum += analogRead(A0);
        sample_count++;
       delay(5);
    }
    // calculate the voltage
    // use 5.0 for a 5.0V ADC reference voltage
    // 5.015V is the calibrated reference voltage
    voltage = ((float)sum / (float)NUM_SAMPLES * 5.320) / 1023.0;
    // send voltage for display on Serial Monitor
    // voltage multiplied by 11 when using voltage divider that
    // divides by 11. 11.132 is the calibrated voltage divide
    // value
 
    napon=voltage * 1;
    Serial.print(napon);
    Serial.println (" V");
   
    

     
    

    sample_count = 0;
    sum = 0;
}


Za tempmat ću ugradit servo motor na leptir gasa koji će oduzimat ili davat gas da bi održao zadanu brzinu, to ću zadnje radit kada sve kompletiram i prikupim sve informacije.
Detaljne radove ću psotavlajti ovdje u temi kako bi pomogao drugima a i sam bolje pratio projekat naravno možete i vi uskočiti s kojim savjetom ako negdje zapnem ili mislite da može se bolje odradit
Emigrant
Pravo sam se raspisao :)
Pravo sam se raspisao :)
Posts: 1437
Joined: 31-03-2011, 12:04
Location: N i t r a

Re: Board copmuter with "adruino"

Post by Emigrant »

za tempomat imaš gotov modul ... recimo za astru G 1.4 .... motor i sajlica .... nemoraš kupovati step motor pa praviti prenose .... ovo je sve u jednom kucištu ... samo spojiš žice i zakačiš sajlicu za leptir ....
ako ima nešto javi da pomognem
Maki
Odlično uznapredovao
Odlično uznapredovao
Posts: 766
Joined: 02-07-2012, 12:54

Re: Board copmuter with "adruino"

Post by Maki »

Drago mi je da si zadovoljan sa arduino :D

Samo da ti skrenem pažnju. Ovako na brzinu sam bacio pogled na to što planiraš raditi.
Te bih ti samo želio skrenuti pozornost na nekoliko stvari.

1.) "Inside the attached function, delay() won't work and the value returned by millis() will not increment. Serial data received while in the function may be lost. You should declare as volatile any variables that you modify within the attached function. See the section on ISRs below for more information" - citirano sa službene stranice arduina. Bitno za obratiti pozornost.

2.) Ako koristiš puno različitih funkcija, pazi da se međusobno ne "poubijaju" pa ti nastane raspašoj. Jer neke funkcije koriste istu stvar (npr. isti timer) za dvije raziličite funkcije, pa obrati pozornost na to.
Također dobro si rasporedi vrijeme. Jer za tempomat bi ipak trebala biti neka regulacijska petlja, PI il PID. Nju moraš konstantno osvježavat. Dobro si rasporedi vrijeme.
User avatar
Black
Odlično uznapredovao
Odlično uznapredovao
Posts: 981
Joined: 17-12-2008, 15:44

Re: Board copmuter with "adruino"

Post by Black »

Emigrant wrote:za tempomat imaš gotov modul ... recimo za astru G 1.4 .... motor i sajlica .... nemoraš kupovati step motor pa praviti prenose .... ovo je sve u jednom kucištu ... samo spojiš žice i zakačiš sajlicu za leptir ....
ako ima nešto javi da pomognem
Na ovaj sam servo motor mislio
https://electrosome.com/wp-content/uplo ... -Motor.gif i dobru si mi ideju dao za sajlu da stavim ja sam mislio preko poluga što bi malo ružno izgledalo ovako povučem sajlu i servo motor sakrijem negdje
hvala ;) :)

@Maki
Board je zamišljen tako da će se tipkama prebacivati display, kada stisnem taster na dispalyu mjeri brzinu,stisnem opet mjeri okretaje itd. dakle prebacuje se.
Tako da će uz taj atach interupt radit možda samo još jednu ili dvije funkcije program(tj. kad stisnem taster ta petlja se otvara)
Iako mi nije jasno to objašnjene da milis() funkcija ne radi sa atachinterupt, a u mom programu radi
Emigrant
Pravo sam se raspisao :)
Pravo sam se raspisao :)
Posts: 1437
Joined: 31-03-2011, 12:04
Location: N i t r a

Re: Board copmuter with "adruino"

Post by Emigrant »

koji ti je mail ... poslao bih ti nešto ..... a što se motora tiče ... i dalje sam za onaj opelov .... sve u jednom kucištu ... iz kucišta izlazi samo saljica i žice ..... veličina cca 10 x 10 cm
mrblack
Posts: 20
Joined: 08-05-2015, 23:00

Re: Board copmuter with "adruino"

Post by mrblack »

Nemas fabricki board pa pravis ovaj ili imas fabricki ali i ovaj naknadno stavljas?
User avatar
Black
Odlično uznapredovao
Odlično uznapredovao
Posts: 981
Joined: 17-12-2008, 15:44

Re: Board copmuter with "adruino"

Post by Black »

Mail je audi.s2@net.hr

A jesi mislio na ovaj motorić?
http://img.photobucket.com/albums/v25/s ... 020620.jpg

@mrblack
Nemam fabrički board, tj može se naknado ugraditu moje i ugradnja je jednostavna. ALi preskupoo
http://www.ebay.com/itm/AUDI-AC-BC-80-9 ... Swo0JWQ5WK

Tako da sada pravim po sebi
User avatar
Black
Odlično uznapredovao
Odlično uznapredovao
Posts: 981
Joined: 17-12-2008, 15:44

Re: Board copmuter with "adruino"

Post by Black »

projekat se polako završava, uskoro ću objavit update. Nego jedna me stvar 'muči' adruino ću napajati sa 5 V sa LM regulatorom a za display mi treba 3.3 V. I računao sam stavit tri diode 1n4007 u seriju(na svakoj pad napona 0.7) da dobijem 3.3 V, ali to ne funkcionira ekran mi poveća kontras i trepće, a kad dovedem 3.3 V sa napajanja od kompa sve je uredu. Pošto nemam lm regulator što na izlazu ima 3.3 V, jeli sigurno da napravim regulator sa tranziostorom i zenericom http://www.tradeofic.com/uploadfile/ic- ... 325326.gif samo ću ja stavit manji tranzistor i drugu zenericu naravno
User avatar
bob4
Stariji član
Stariji član
Posts: 2572
Joined: 31-01-2010, 16:12
Location: Kutina

Re: Board copmuter with "adruino"

Post by bob4 »

User avatar
Black
Odlično uznapredovao
Odlično uznapredovao
Posts: 981
Joined: 17-12-2008, 15:44

Re: Board copmuter with "adruino"

Post by Black »

Ja sam iz BiH pa nmg to naručit. A još je veća stvar što to meni treba ujutro. Samo mi nije jasno zašto mi ona fora sa diodama nije prošla?
User avatar
WhiteHead
Pravi forumaš
Pravi forumaš
Posts: 1627
Joined: 28-06-2007, 18:36
Location: 75,35k; B&H

Re: Board copmuter with "adruino"

Post by WhiteHead »

Iz BiH se može sve poručiti, ali pošto ti treba sutra ići će to i sa tom šemom koju si stavio.
Naravno, kakav elektrolit iza....
Ako kaniš pobijediti, ne smiješ izgubiti
User avatar
bob4
Stariji član
Stariji član
Posts: 2572
Joined: 31-01-2010, 16:12
Location: Kutina

Re: Board copmuter with "adruino"

Post by bob4 »

Bijeli je bio brži....elko obavezno iza dioda
User avatar
MHN
Pravo uznapredovao :)
Pravo uznapredovao :)
Posts: 350
Joined: 11-03-2005, 22:02
Location: Sarajevo

Re: Board copmuter with "adruino"

Post by MHN »

Black wrote:Ja sam iz BiH pa nmg to naručit. A još je veća stvar što to meni treba ujutro. Samo mi nije jasno zašto mi ona fora sa diodama nije prošla?
Odakle si iz BiH, imam ja par regulatora 3.3V da ti posaljem?
User avatar
Black
Odlično uznapredovao
Odlično uznapredovao
Posts: 981
Joined: 17-12-2008, 15:44

Re: Board copmuter with "adruino"

Post by Black »

jbm znanje kako sam zaboravio na kondezator :azdaja: :azdaja:
Jedan kondezator posle dioda je riješio sve probleme, tako da nisam ni imao potrebe pravit regulator.
Hvala svima na pomoći :) ;)
@MHN hvala na ukazanoj pomoći ali evo problem je riješen zahvaljujući kolegama s foruma

Imam još jedan problemčić ljudi
Ovo je signal koji izlazi iz žice za mjerenje potrošnje
http://www.docdroid.net/ZHFmAhE/drawing1.pdf.html
Koji otpronik trebam stavit za pulldown i između žice za signal i adruina, a da eliminiram ove jako niske signala i da ulaz ne prelazi 5V
User avatar
Black
Odlično uznapredovao
Odlično uznapredovao
Posts: 981
Joined: 17-12-2008, 15:44

Re: Board copmuter with "adruino"

Post by Black »

Evo čitavo jutro se mučim i nikako da filtriram taj signal, ispucao sam sve aseve iz rukava a ništan isam postigao
Probao sam sa sljedećeim shemama
Image

Image

Ali stalno čitam te niske signale (smetnje koji su ustvari signali okretaja motora) a ako smanjim pull up resistor onda nema signala nikako, kondezatorima samo smirim signal, ali niako se nemogu rješit tih niskih smetnji
User avatar
Kukinjos
Pravi forumaš
Pravi forumaš
Posts: 1724
Joined: 28-03-2012, 18:01
Location: Split

Re: Board copmuter with "adruino"

Post by Kukinjos »

Tvoj pristup auto elektronici gdje ima gomila smetnji, nije baš najbolji, u što si se već i sam uvjerio. Pokušaj ovako:
Image
Cezare, star sam i nemoćan, ali poslušaj moj savjet ....
User avatar
Black
Odlično uznapredovao
Odlično uznapredovao
Posts: 981
Joined: 17-12-2008, 15:44

Re: Board copmuter with "adruino"

Post by Black »

Da moje znanje o elektorehnici je jako tanko :oops: ali imam tako veliku želju ovo napravit

Hvala na shemi pokušao sam s njom i nisam baš dobio signal koji sam očekivao sad je nešto potpuno drugačije
na lergasu signal ima istu frekfenciju ali mu raste napon i tako u krug, pri opterećenju kad troši više goriva(na videu na oko 30 sec) napon se digne a freq ostane manje viša ista čak i manja
(na postavkama na youtube u dole denmo kutu možete smanjit brzinu video zapisa radi lakšeg praćenja)
https://www.youtube.com/watch?v=-r4Mxu2Z7wU

a ovo je signal sa 3.4k otpornikom prema adruinu i pull down od 100k
https://www.youtube.com/watch?v=WNBjrMPSSu4

Ovdje se vidi da na ler gasu interval između signala je skoro isti, a pri opterećenju (na oko 30 sec) interval se smanji.
User avatar
Kukinjos
Pravi forumaš
Pravi forumaš
Posts: 1724
Joined: 28-03-2012, 18:01
Location: Split

Re: Board copmuter with "adruino"

Post by Kukinjos »

Hmm, ajde snimi na isti način signal s board kompa, sve mi se čini da on podatak o trenutnoj potrošnji daje u impulsnom, a ne u linearnom obliku. To bi značilo da na ulaz trebaš stavit integrator, ili impulse dovest na arduino i softverski ih integrirati. Mislim da je softversko integriranje priličan posao za arduino, i da neće uspjeti obaviti sve zadaće koje treba u tom trenutku, zato bi preporuka bila analogni integrator, ali o tome kasnije, za sada bi bilo dovoljno snimiti osciloskopom izlaz iz board kompa i staviti to na YT.
Cezare, star sam i nemoćan, ali poslušaj moj savjet ....
User avatar
Black
Odlično uznapredovao
Odlično uznapredovao
Posts: 981
Joined: 17-12-2008, 15:44

Re: Board copmuter with "adruino"

Post by Black »

ovaj drugi link video pod nazivom osci2 je signal koji ide iz ECU-a za board comp, samo sam ja stavio 3k prema adruinu da ga ne sprži i 100k pull down da ne hvata signale iz okoline. imam još jedan adruino za rezervu mogu njega programirat samo da radi kao integrator. Ali moram prvo malo proučit na šta ciljate jer nisam još skužio o čemu se radi
User avatar
Black
Odlično uznapredovao
Odlično uznapredovao
Posts: 981
Joined: 17-12-2008, 15:44

Re: Board copmuter with "adruino"

Post by Black »

ovaj drugi link video pod nazivom osci2 je signal koji ide iz ECU-a za board comp, samo sam ja stavio 3k prema adruinu da ga ne sprži i 100k pull down da ne hvata signale iz okoline. imam još jedan adruino za rezervu mogu njega programirat samo da radi kao integrator. Ali moram prvo malo proučit na šta ciljate jer nisam još skužio o čemu se radi
Post Reply