Archive

Posts Tagged ‘arduino’

Nov projekt - OTK2 - RFID, ethernet, Arduino

April 7th, 2009 No comments

Že spet se na faksu začenja sezona projektov, in pri OTK2, se bom tokrat poigral z RFID italnikom, arduinom, in ethernet shieldom, in končni produkt, naj bi bil sistem za "štemplanje1"

Celotna zadeva bo potekala približno takole:

  • Uporabnik približa svojo kartico/tag rfid readerju2, ki odčita podatke s taga
  • Podatki grejo v arduina in  se rahlo obdelajo
  • Arduino te predelane podatke prek navadnega ethernet omrežja pošlje oddaljenemu računalniku
  • Računalnik prejete podatke shrani v obdelavi-prijazno obliko

Potrudil se bom tudu narediti zadevo razširljivo (torej, da bi bilo teoretično mogoče priključiti več mikrokrmilnikov z čitalci, ki bi vsi skupaj delali z enim strežnikom). Kako bom shranjeval podatke, še ne vem... mogoče zavoljo enostavnosti kar v CSV file, mogoče pa kar v (MySQL) bazo. Zanimivo bi bilo tudi vodenje evidence ur, kdaj, kdo, in koliko ur je bil notri, ter mogoče tudi 'plačilo' teh ur glede na čas dela3.
Najtežji del bo pa najbrž teoretični, kjer bo treba spraskat skupi ene 6,7 strani teksta za dopolnilo k praktičnemu izdelku.

  1. Ja, žal ne vem boljše besede za tisto početje zjutraj ko greš v službo, in popoldne ko greš domov
  2. glej par postov nazaj
  3. torej, nočno delo jbi bilo plačano več kot tisto podnevi, ipd.

RFID

March 19th, 2009 5 comments

Ravnokar sem dobil rfid reader in 5 tagov (trije obeski in dve kartice).  Zadeva je precej majhna, potrebuje pa 5v napajanja, podatke pa oddaja prek serijskega uart protokola (ki je, za razliko od weigand-a, zelo enostaven za uporabo).  Tag zazna na razdaji cca 10cm, in mcu-ju pošlje 10bitni podatek s kartice (torej ID) in checksum (ki se ga da preračunati s pomočjo 4ih XOR-ov).

Slikica: (za primerjavo velikosti je vse skupaj na breadboardu.

rfid reader in tagi

rfid reader in tagi

Cena? prava sitnica! 12.5usd za reader, in 2.5usd za tage!

Zdj pa sam še sprogramirat neko 'bazo', ki bo preverjala validnost, in spravt gor kak motorček, ki bo odklepal ključavnico :)

Categories: elektro stuff, geek stuff Tags: ,

315 MHz RF komplet + Arduino

February 22nd, 2009 3 comments

Že dolgo časa nisem nič napisal sem... Izpiti krivi... pa tud nč pametnga (razn izpitov) nism počel...

Mi je pa dans blo dolgčas, pa sem se malo igral z RF kompletom (5usd, seeedstudio).

dsc00073

Na sliki se vidita dva arduinota (no ja.. eden je freeduino ;) ), in rf modula na breadboardu. Napajana sta z +5vdc, in pri tej razdalji (<10cm) ne potrebujeta niti antene (doh).  Uporabljata ASK modulacijo (in sta s tem precej občutljiva na okoljske motnje/šum). En/dekoderja nisem uporabil, ker se mi je zdelo da v bližini ni dovolj močnih 315MHz virov.

Testiral sem tako, da je na spodnjem (sprejemnem) free(ar)duinotu tekel program, ki je ob prejemu črke 'H' vklopil ledico, ob prejemu črke 'L' pa jo izklopil (ta program se nahaja med example kodo).

dsc00075

Na oddajni modul pa je priključen drugi arduino, ki je seveda izmenično oddajal znaka 'H' in 'L'.

dsc00076

Prvi poskus: 2400bps, 500ms delaya med znakoma... NIČ

Drugi poskus: 1200bps, 500ms delaya med znakoma... ledica se prižge... prižgana kakid 10s, se ugasne... spet NIČ

Udarec po glavi... se spomnim izpita OTK (ki sem ga imel prejšnji teden), ukinem delay,... in ledica utripa :)

Dodam med 'H' in 'L' 'a'-je namesto delaya, in ledica lepo počasi utripa :)

Torej.. če pošiljaš nek niz, (ne glede na količino relevantne informacije med irelevantno), zadeva dela dosti bolje, kot če samo pošlješ en znak, in samo čakaš do naslednjega oddanega znaka.

In kaj zdaj? Čakam še na en 433MHz komplet, pa da vzpostavim two-way komunikacijo, in istočasno še testiram in primerjam razdaljo, po kateri je mogoče še realtivno obro prenašati podatke :)

Še dve slikce kako zgledata oba modula nepriklopljena v protoboard:

top rx txbottom rx tx

...in mogoče bi se dalo preimenovati post v: "Kako se lahko dve uri za(je)bavaš za 5usd" :)

Categories: elektro stuff Tags: , , ,

Arduino + temperaturni senzor + LCD - finished

January 29th, 2009 4 comments

Dans mi je ratal do konca popedenat senzor, pa zjutri me je še kurir zbudu, k mi je prnesu serijski LCD (white on black), in seveda je blo treba sprobat use skupi :) )

LCD ma sicr zanimiv bug/feature, in to je da newline ("\n") ne dela... niti ne windowsaski ("\n\r" niti ne "\r\n"), tako da je treba za premik v novo vrstico uporabljati absolutno pozicijo kurzorja, ampak se da brez problema to zapakirat v kako funkcijo tipa "newline()". In ker je LCD serijski, porabilo za komuniacijo le en pin... V kombinaciji z SoftwareSerial pa imamo še vedno čisto enostavno komunikacijo tudi z računalnikom. Izgleda pa precej lepo... edino backlight LED-ica ob strani malo preveč sveti, a če bi bilo zapakirano v škatlico, se ne bi videlo :)

dsc00063

Seveda temperaturo bi treba zaokrožiti na celo stopinjo (ja len sm...).

PS: Arduino je priklopljen na 230vac->5vdc usb adapter... torej dela brez računalnika :D

Categories: elektro stuff Tags: , ,

DS1822 temperaturni senzor in Arduino

January 29th, 2009 1 comment

Od maxima sem dobil sample DS1822 temperaturnega senzorja, in seveda ga je blo treba sprobat :)

ds1822

Kaj je zanimivo na tem senzorju? Senzor deluje po 1-Wire protokolu... torej za razliko od NTC zadev in raznih termistorjev, je vse skupaj digitalno, in za komunikacijo potrebuje le eno ćico, ki deluje tudi kot neke vrste BUS. Torej je na isto žico možno priključiti več senzorjev (nisem še poskusil, mogoče bom), ali drugi naprav, ki delujejo po 1-wire protokolu, in vsako posebej klicati, in od nje zahtevati podatke, ali pa z njo početi kaj drugega. Torej na isto žico lahko prikljuimo več različnih senzorjev, kak eeprom spomin, ali pa kaj še bolj eksotičnega, in z enim kontrolerjem  ob poljubnih trenutkih uporabljamo poljubno napravo (vsaka ima svoj naslov, "master" je pa lahko samo en).

Na strani od Arduina je že spisana knjižnica OneWire, in tudi sample koda, kjer je treba spremeniti le naslov družine senzorjev iz 0x10 v 0x22, in bo koda delovala tudi za ta senzor.

Kaj naprej? Najti moram še kako škatlico od filma (le gdo bi si mislil da bo to težko, a je žal nimam nobene pri roki), in spraviti senzor čez okno, ter po moćnosti izrisati še kak graf spreminjanja temperature :)

Ps: temperatura v moji sobi je trenutno ~21˚c :D
Pps: ja vem da zgleda grdo ploščica, ampak odlomu se mi je glih prov velik košček petrinaksa, pa mi ga je bilo žal vržti stran :)

Arduino pt. 2

November 23rd, 2008 2 comments

Se še spomnite ko sem pisal o pomanjkanju dokumentacije za kalkulator?

Danes sem ugotovil da so neke stvari še dosti slabše dokumentirane :) Recimo LCD display (ki sem ga dobil zraven š-arma). Hotel sem ga priklopiti na arduina in uporabljati s pomočjo (že spisane) knjižnice za lcdje.. ampak seveda ni delalo. In potem na strička googlea iskati datasheet za edino stvar, ki je napisana na displayu.. torej "EW162B0GLY"... in našel sem tale datasheet. Polom! Nikjer tudi ne piše kater driver je spodaj?! Šele po brskanju po š-armovi knjižnici io.c/io.h sem ugotovil da je to nek Hitachijev crap. In potem dekodirat razne inicializacije, kako se postavi kurzor na začetek, in kako izpisati lastne znake... ampak to sem si pustil za kak drug dan....

Žal mi je da nisem že takrat kupil serijskega lcd-ja... ker te paralelni porabijo preveč pinov... čeprav 30$ za tak displayček je pa tudi malo preveč.

No ja.. pa da se ne bom samo piz**il, bom dodal še eno fotko :)

in ja... je slikano na postli (ker mi je zmanjkal placa na mizi)... LCD-ja se ne vidi od spredaj ampak od zadaj, ker tako, improvizirano1, povezan z arduinom bolj težko stoji na pravi strani. Po nekaj ciklih (ko dela nevemkaj) se na ekranu izpisujejo "qrstuvwx" namesto "abcdefgh"... če zamaknem za 16 znakov, pa se iste črke pokažejo v UPPERCASE-u... kar mi tudi ni čisto jasno zakaj... pa naj bo tudi to za kdaj drugič. Našel sem tudi adapter2, da lahko arduino dela tudi brez računalnika... Voltmeter je pa služil predvesem za preverjanje povezav, da ni slučajno katera prekinjena...

In ja... od zdaj, če ima kdo željo da mi reče "RTFM", naj mi ga prvo prinese (manual seveda) :D

  1. ja... to je nekoč bil mrežni kabel
  2. sicer se ne vidi na sliki, ampak ga je blo treba mal zalimat s sekundnim lepilom... in ja.. otroci... ne tipkat, če imate sekundno lepilo na prstih :D