[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4696: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4698: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4699: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4700: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
www.skg.fi • katso viestiketjua - bittiNikkari projekti

bittiNikkari projekti

bittiNikkari projekti

ViestiKirjoittaja veskola » 21.08.2013 22:11

Aloitetaanpas hieman erilaisella autoprojektilla, nimittäin tehdään itse tietokone autoon. Ne monet teistä ketkä aiemmin seurasivat GrazyVitos projektia, jonka tiivistelmän yritän keräillä tänne erinäisiltä sivustoilta, tietävät että GrazyVitos projektia maustettiin mitä mielikuvituksemmisilla tietokoneen tekeleillä. Käytössä oli 8 bittisen AVR mikrokontrollerin eri versioita lukuisia. Tällä hetkellä Vitossa on oikeastaan kolme AVR kontrolleria, joista 2 on todellisessä käytössä. Heti maskin takana on valualumiinikotelossa ATMega328 20MHz kellotaajudella ja ainoana tehtävänä on tarkkailla jäähdyttimestä ulos tulevan veden lämpötilaa ja sen perusteella käynnistää jäähdyttimen flekti PWM ohjauksella. Tietokoneissa PWM ohjaus tarkoittaa aina sitä, että suuren sähkövirran tehoa pystytään säätämään eli tässä tapauksessa flektin pyörimisnopeutta. Tämä prosessori on toiminut ihmeen hyvin jo pari kesää.

Toinen tärkeä kontrolleriprojekti alkoi joskus 2012-2013 talvella, jolloin kontrolleripiiriksi hommasin ebaysta huippuedullisia ATTiny24 piirejä, joissa on minimaalisesti muistia. Tämän piti korvata kaksi erillistä ATMega328 pohjaista, no sanotaan suoraan oikeaa protokötöstystä. Mitään valmiita kirjastoja näissä en ole käyttänyt vaan koko ytimen pyöritys tapahtuu omalla koodinpätkällä, ns. superloopilla, jossa moniajon sijaan prosessori pyörii loopissa ja keskeytykset aiheuttavat aina jonkin asian tekemisen. Tälle kontrollerille jäi kolme yhtäaikaista ja tärkeää tehtävää. Sähköisen alipainepumpun ohjaaminen paineanturin ohjaamana, kaasupolkimen anturin lukeminen ja sitä vastaavan analogisen jännitteen luominen PWM signaalilla sekä moottorin kierrosluvun valvominen ja sen perusteella tiedon lähettäminen elektroniikkakortille, joka piilottaa vaihteiston ohjaimelta pulsseja. Laite muodostui kolmesta piirilevystä, joista se äly on kaikkein pienimmässä, toisessa kortissa hyvin suojattu virtalähde sekä sanoisiko kierroslukupulssien digitalisointimoduli. Kolmas piirilevy on erillinen mikrokontrolleri ATMega328, joka käytännössä on toimeton tällä hetkellä mutta ajatus oli hoitaa sillä jotain anturien, eli paineiden sekä lämpötilojen monitorointia.

Kuva

Kuvassa oleva rele kytkee audi TT:n sähköistä alipainepumppua, kontrolleri vahtii samalla, ettei pumppua ohjata liian kauan jos alipaine ei ala syntyä esimerkiksi kun jokin letku vuotaa. Eräs hienous tuossa on moottorin kierrosluvun tarkkailu, alipainepumppua ei käynistetä ennen kuin moottori on käynnistynyt. Noita johtoklipsejä käytetään muuten piirin ohjalmointiin erillisen USB johtoon kytketyn ohjelmointilaitteen avulla.

Tämä paketti on toiminut jokseenkin odotuksia vastaavasti, tosin kierroslukuvalvonta ei ole ollut juurikaan käytössä, koska auto on ollut katsastus- ja siviiliajosäädöissä tämän kesän. Turbiininlukitus on toiminut kuten sen kuuluukin vaikka on mynäpumppu, eli nyt voi ajaa ihan pintakaasulla, vihdoinkin. Toki pieniä vastoinkäymisiä on ollut, kuten tarvike-TPS anturin oikosulun aiheuttama totaalinen ECU blackout. Käytännössä silloin ajetaan auto kotiin vaihdelaatikko vikatilassa ja ilman jarrutehostinta. Suurimman älyn sisältävä mikrokontrolleri näkyy kuvassa ja sen muistin (flash) koko on vain 2kB. Oli melkoinen haaste mahduttaa tuohon muistiin kaikki mitä tarvittiin mutta se oli haaste jonka halusin ottaa, ai miksikö, no samasta syystä kuin ihmiset haluavat tehdä ristikoita :D

Kuva

Keväällä 2013 törmäsin erittäin halpaan 32 bittisen ARM kontrollerin evaluointikorttiin, josta oitis innostuin ja tilasin pari kappaletta. Kortti on aivan loistava, se koostuu kahdesta ARM kontrollerista, joista toisen avulla toinen voidaan flashata USB portin kautta. Saman USB portin kautta onnistuu aito raudassa debug suoraan kääntäjästä. Voin siten ajaa koodin aidossa raudassa haluamaani kohtaan ja pysäyttää siihen, sitten stepata C tai assembler koodia rivi kerrallaan. Mielessä häilyi monta projektia, mainitaan nyt vaikkapa TDI/CDI moottorin ECU, sähköisen automaattilaatikon täydellinen ECU (eli TCM). Hestec muuten käyttää uusimmassa ja hienoimassa ECU:ssa tätä samaa ydintä ja siitä on saatavilla erityisesti autokäyttöön olevia versioita. Ensimmäiset illat sujui mukavasti vilkuttamalla kortilla olevaa lediä, käytössä oli IAR Systemsin kehitysympäristö. Melko pian löysin kuitenkin ilmaisen kehitysympäristön ja samalla heitin mäkeen kaikki valmiit startup ja CRT kirjastot, jotta olen varmasti vapaa copyrighteista. Seurasi noin neljän kuukauden kehitysjakso, jonka aikana piti oppia paljon ARM Cortex ytimestä sekä kontrollerilla olevasta systeemistä. Lopulta päädyin tilaamaan ebaysta vanhoja nokian puhelinten näyttöjä, joiden avulla ohjelmakehitys alkoi sujua, tosin paljon kului aikaa näyttörutiinien kooodaamiseen. Oltiin tässä vaiheessa, kuvassa evaluointikortin päälle on värkätty piirilevy, jossa on muutamia ledejä sekä painonappeja ja sen päälle nokia 3110 mustavalkoinen grafiikkanäyttö. Näytönohjaimen ja grafiikkarutiinien koodaamiseen kului rehellisesti sanoan varmasti kymmeniä elli jopa yli sata tuntia...mutta eipähän ole kenenkään muun tekemä.

Kuva

Vaativimmissa ohjelmaprojekteissa superloopin käyttäminen tulee aiheuttamaan ongelmia, joten tuli tarve käyttöjärjestelmälle, joka osaa tehdä useampaa rinnakkaista asiaa. Usean perjantai- ja lauantai-illan päätteeksi oli syntynyt SKG OS, joka pohjautuu internetissä monta vuotta sitten esiteltyyn SST task switheriin. Valmiitakin RTOS olisi ollut saatavilla, mutta tämä on kaikkein tehokkain ja pieneen tilaan menevä. Toki se on vaikeampi käyttää. Kyseinen ohjelmanpätkä oli kirjoitettu aikoinaan aataminaikaisille PC:lle joten oman työnsä otti sen porttaaminen ARM prosessorin keskeytyssysteemeille, mutta sekin lopulta onnistui kun tarpeeksi hakkasi päätä seinään.

Seuraavat stepit olivat ja tulevat olemaan rutiininomasta kirjastojen kirjoittamista PWM ohjaimille, timereille, AD muuntimille ja vastaaville. Heinäkuussa oltiin tässä vaiheessa, ja seuraavat isommat askeleet taitavatkin jo olla varsinaisen piirilevyn valmistaminen siten, että ARM prosessorilla päästään ohjaamaan isoja moottoreita, releitä ekä mittaamaan kierroslukuja, eli samoja asioita mitä tehtiin sillä pikkuisella AVR kontrollerilla. Käytössä oleva Nokia3310 näyttö on sikäli hyvä, että se on paitsi erittäin halpa (kiinalaiset keräävät käytetyt kännykät ja myyvät näytöt istutettuna uudelle piirilevylle muutaman euron hinnalla) niin se on myös graafinen. Aikaisemmassa AVR projektissahan oli vain 2 tai 4 rivinen tekstinäyttö. Ebaystä saa kohtuu hintaan myös värillistä kosketusnäyttöä, ylläripylläri ei liene, että sekin on ollut Nokian kännyköissä käytössä ja siinä on yksi steppi mikä pitää ottaa.

Kuva

...jatketaan tässä sitten taas kun tulee jotain hauskaa...
Avatar
veskola
 
Viestit: 111
Liittynyt: 01.08.2013 22:32

Re: bittiNikkari projekti

ViestiKirjoittaja gti-perttu » 21.08.2013 22:36

Vaikka 80% tuosta meneeki yli hilseen niin että viuhuu, ni mielenkiintosta luettavaa se on silti. Tältä sepältä se ei mee bitit vinoon! ;)
Syncro - Ja pääset syvemmälle!
Avatar
gti-perttu
2 fast and VAGerious
 
Viestit: 48
Liittynyt: 18.08.2013 14:53
Paikkakunta: Kokkola

Re: bittiNikkari projekti

ViestiKirjoittaja mersuperkaamo » 23.08.2013 18:48

kysyn ihan vaan aikani kuluksi, että olisko Veskolalla myyvä mulle sellasta alumiini kiskoo missä olis jäähytysrivat toisella sivulla 150x130x8mm eli sellanen latikka olis kyseessä :roll:
mersuperkaamo
 
Viestit: 16
Liittynyt: 18.08.2013 18:38

Re: bittiNikkari projekti

ViestiKirjoittaja veskola » 23.08.2013 20:24

Ei valitettavasti ole ja taitaa olla vaikea löytääkin jos tuo 8mm paaksuus on ehtoton, nimittäin jotain alumiiniprofiilia on koneenrakennukseen jossan 15 mm paksuudessa.

Jostakin vanhasta autovahvistimesta varmaan saisi silvottu ?
Kuva
Avatar
veskola
 
Viestit: 111
Liittynyt: 01.08.2013 22:32

Re: bittiNikkari projekti

ViestiKirjoittaja mersuperkaamo » 23.08.2013 20:53

no juu sopis varmaan sellanenki, tulis sytkäpoksin alle jos vaikka jäähtys paremmin, miten on olisko sellasesta hyötyä :roll: nythän se on sisälokasuojaa vasten ja jotakin lillua välissä (jos on enään)
mersuperkaamo
 
Viestit: 16
Liittynyt: 18.08.2013 18:38

Re: bittiNikkari projekti

ViestiKirjoittaja veskola » 23.08.2013 21:21

Mahtuiskos sinne paksumpi ?
Avatar
veskola
 
Viestit: 111
Liittynyt: 01.08.2013 22:32

Re: bittiNikkari projekti

ViestiKirjoittaja Miksi » 23.08.2013 21:22

niin sitä piitahnaa siellä sais olla sopivasti välissä... sen lillun tarkotus on vain johtaa lämpöä.
sivuston tietoa ei saa käyttää omaisuuden suojeluun
Miksi
 
Viestit: 8
Liittynyt: 18.08.2013 18:10

Re: bittiNikkari projekti

ViestiKirjoittaja veskola » 23.08.2013 22:39

Piitahnaa tai sitten semmoista harmaata lämmönjohtomattoa. Molempia löytyy SKG tallilta.
Avatar
veskola
 
Viestit: 111
Liittynyt: 01.08.2013 22:32

Re: bittiNikkari projekti

ViestiKirjoittaja mersuperkaamo » 23.08.2013 22:50

mersuperkaamo
 
Viestit: 16
Liittynyt: 18.08.2013 18:38

Re: bittiNikkari projekti

ViestiKirjoittaja veskola » 24.08.2013 07:21

Partkon verkkokaupassa on tälläinen: ALUMIINIPROFIILI 97x100x25 mm 9,86€ (7,95€)

Kuva
Avatar
veskola
 
Viestit: 111
Liittynyt: 01.08.2013 22:32

Seuraava

Paluu Projektit

Paikallaolijat

Käyttäjiä lukemassa tätä aluetta: Ei rekisteröityneitä käyttäjiä ja 0 vierailijaa