 |
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
elektrobum Član

Pridružen-a: Ned 13 Nov 2011 19:04 Prispevkov: 144 Aktiv.: 0.87 Kraj: Mb
|
Objavljeno: Tor Apr 24, 2012 10:33 am Naslov sporočila: Hall senzor + atmega8 + Bascom |
|
|
Že kar nekaj časa se mučim na tem kako bi DC motorju zmeril hitrost ter jo prikazal na LCD ter sem se sedaj odločil, za malo pomoči/ mnenja.
Moja ideja je ta , da sem na os motorčka namestil
cd. plošček ter na njega namestil dva majhna magneta ( dva zato, da se zbalansira zadeva) ter z hallovim senzorjem ( allegro a1321) bi meril
impulze ter nato po izračunu dobil hitrost ven, katero bi prikazoval. Delam pa v programu bascom, ter uporabljam mikrokontroler atmega8.
V določenih formih sem bral da moram impulze šteti na interrupt pinu, deliti s časom, upoštevati obseg kolesa(cd-ploščeka) in tako se dobi hitrost.
Ampak, nekako me zmede to v pisanju kode.
A hall senzor je treba vezat preko pull up upora(10k), je morda potreben kakšen ojač.?
Zelo bi bil hvaležen, če mi podate kakšno mnenje/ del kode za lažjo orentacijo. |
|
Nazaj na vrh |
|
 |
KMX Član

Pridružen-a: Sre 28 Jan 2009 16:49 Prispevkov: 308 Aktiv.: 1.54 Kraj: NOVA CERKEV
|
Objavljeno: Tor Apr 24, 2012 10:51 am Naslov sporočila: |
|
|
Obseg kolesa ni pomemben, ker je čas med dvema pulzoma iz senzorja neodvisen od premera kolesa. |
|
Nazaj na vrh |
|
 |
PZUFIC Vseved


Pridružen-a: Sob 17 Nov 2007 19:06 Prispevkov: 6987 Aktiv.: 32.63 Kraj: Rakek
|
Objavljeno: Tor Apr 24, 2012 2:01 pm Naslov sporočila: |
|
|
KMX je napisal/a: |
Obseg kolesa ni pomemben, ker je čas med dvema pulzoma iz senzorja neodvisen od premera kolesa. |
Za obrtae/min ne za kake m/h pa. _________________ Ne čakaj, da se bo nekaj premaknilo pojdi in nekaj premakni.
Lp Primož |
|
Nazaj na vrh |
|
 |
vilko Član



Pridružen-a: Pet 13 Feb 2004 10:26 Prispevkov: 3362 Aktiv.: 14.19 Kraj: Dragomer
|
Objavljeno: Sre Apr 25, 2012 9:52 am Naslov sporočila: |
|
|
Neko frekvenco, - tudi inpulzi hall senzorja dajejo neko frekvenco, ki nas zanim - merimo principielno na dva načina:
Ali v časovni enoti štejemo impulze. Če je časovna enota ena sekunda, potem je rezultat že frekvenca. To pride v poštev za višje frekvence, hitrovrteči se stroji.
Ali pa merimo čas med dvema inpulzoma in potem izračunamo frekvenco iz 'periode', se pravi časa med dvema inpulzoma. To pride v poštev pri počasi vrtečih se strojih.
Če sem napisal nekaj, kar že veš, oprosti. _________________ Nihče ni za vojno in vsi so za mir,
vsi so za bratstvo, nihče za prepir.
Od same ljubezni vsak čas na granatah
bo vtisnjeno geslo: "Darilo za brata"
Janez Menart |
|
Nazaj na vrh |
|
 |
elektrobum Član

Pridružen-a: Ned 13 Nov 2011 19:04 Prispevkov: 144 Aktiv.: 0.87 Kraj: Mb
|
Objavljeno: Čet Maj 31, 2012 11:57 am Naslov sporočila: |
|
|
No da ne bom odpiral nove teme, bom kar tukaj vprašal.
V bascomu delam z grafičnim LCD-jem 128*64 + glcdKS108.lbx
Pri izpisu texta imam neko težavo, kar se lepo vidi v priponki!
pri vrednosti 121.60 je 60 nekoliko zamaknjen dol!
čemu je to ? ...kako bi se lahko tega znebil, da bi mi dalo lepo vodoravno? je že imel kdo podobno težavo? ter kako jo je rešil?
pa tako mimogrede, ima kdo barvne fonte?? oz. vsaj kak free program za urejanje le teh.
lp |
|
Nazaj na vrh |
|
 |
protoncek Član

Pridružen-a: Sre 31 Jan 2007 9:41 Prispevkov: 9573 Aktiv.: 42.77 Kraj: Mengeš
|
Objavljeno: Čet Maj 31, 2012 12:19 pm Naslov sporočila: |
|
|
huh...lahko pripneš del kode, kjer izpisuješ te številke?
Barvne fonte...kako to misliš? LCD je enobarvni...
PS.:mogoče je tole bolj tema za forum od revije SE - tam so bolj bascomaši. |
|
Nazaj na vrh |
|
 |
elektrobum Član

Pridružen-a: Ned 13 Nov 2011 19:04 Prispevkov: 144 Aktiv.: 0.87 Kraj: Mb
|
Objavljeno: Čet Maj 31, 2012 12:48 pm Naslov sporočila: |
|
|
to je samo izpis za tisti del kjer je 121.60
Lcdat 6 , 0 , "m :"
Lcd Fusing(pot , "#.##")
ja mi je sedaj potegnal, ko sem šel datasheet malo bolj podrobno čez  |
|
Nazaj na vrh |
|
 |
protoncek Član

Pridružen-a: Sre 31 Jan 2007 9:41 Prispevkov: 9573 Aktiv.: 42.77 Kraj: Mengeš
|
Objavljeno: Čet Maj 31, 2012 1:02 pm Naslov sporočila: |
|
|
Jaz sem prišel do zaključka da GLCD-ju ne paše preveč uporaba fusing in podobnih ukazov in sem uporabljal raje "ovinke", če se je le dalo.
Podobno kot tebi se zna zgoditi če lcd piše čez rob (lahko gre čez rob prazen znak, pa je dovolj da se vrstica premakne). poskusi odstraniti vrstico: LCDAT 6,0,"m:". Namesto nje daj LCDAT 6,0,"" tako da lcd-ju poveš kje naj začne pisati. Če ne gre drugače pa razbij številko na int (celi del) in frac (decimalni del) in izpiši posebej. |
|
Nazaj na vrh |
|
 |
Vlado Član

Pridružen-a: Sre 03 Mar 2004 21:35 Prispevkov: 563 Aktiv.: 2.38 Kraj: Ljubljana
|
Objavljeno: Čet Maj 31, 2012 6:27 pm Naslov sporočila: |
|
|
Predvidevam da je spremenljivka "pot" tipa single.
Namesto ukaza Fusing lahko uporabiš Config single in se boš izognil ukazu Fusing.
Config Single = Scientific , Digits = 2
LP |
|
Nazaj na vrh |
|
 |
elektrobum Član

Pridružen-a: Ned 13 Nov 2011 19:04 Prispevkov: 144 Aktiv.: 0.87 Kraj: Mb
|
Objavljeno: Čet Maj 31, 2012 7:20 pm Naslov sporočila: |
|
|
ne vem, ampak sem sedaj probal čist osnovno zgolj prikaz besedila, in mi ga prav tako zamakne za 1 pixl !
?? |
|
Nazaj na vrh |
|
 |
protoncek Član

Pridružen-a: Sre 31 Jan 2007 9:41 Prispevkov: 9573 Aktiv.: 42.77 Kraj: Mengeš
|
Objavljeno: Čet Maj 31, 2012 7:30 pm Naslov sporočila: |
|
|
sicer dvomim da je to krivo, ampak mislim da bi moral uporabljati glcdks108.lib in ne lbx.
Kateri font pa uporabljaš?
Naredi takole:
Koda: |
lcdat 1,0,""
for n=1 to 20
lcd "A"
wait 1
next |
tako ti bo počasi eno po eno pisal gor črke A in boš videl kdaj in kje zadevo zamakne. |
|
Nazaj na vrh |
|
 |
elektrobum Član

Pridružen-a: Ned 13 Nov 2011 19:04 Prispevkov: 144 Aktiv.: 0.87 Kraj: Mb
|
Objavljeno: Čet Maj 31, 2012 7:41 pm Naslov sporočila: |
|
|
sem probal
spremeniti v .lib pa ni bili nič drugače.
ter sem naložil ta program ter vedno zamakne točno na sredini ekrana za pixl
uporabljam pa Font8x8
si ne pridem gor kaj bi bilo to narobe |
|
Nazaj na vrh |
|
 |
Vlado Član

Pridružen-a: Sre 03 Mar 2004 21:35 Prispevkov: 563 Aktiv.: 2.38 Kraj: Ljubljana
|
Objavljeno: Čet Maj 31, 2012 7:41 pm Naslov sporočila: |
|
|
Poskusi narisati horizontalno črto ter preštej piksle kje se zgodi zamik.
LCD ima dva kontrolerja za levo in desno polovico in dva pina za njihovo kontrolo
(Ce in Ce2).
Ali lahko preizkusiš kak drug LCD.
Kateri LCD imaš?
Pripni nastavitve (config) za LCD.
LP |
|
Nazaj na vrh |
|
 |
elektrobum Član

Pridružen-a: Ned 13 Nov 2011 19:04 Prispevkov: 144 Aktiv.: 0.87 Kraj: Mb
|
Objavljeno: Čet Maj 31, 2012 9:34 pm Naslov sporočila: |
|
|
Imam :
DEM128064BSBH-PW-N/V 285
drugih grafičnih pa nimam , zgolj enega alfanumeričnega.
nastavitev:
Config Graphlcd = 128 * 64sed , Dataport = Porta , Controlport = Portc , Ce = 3 , Ce2 = 4 , Cd = 0 , Rd = 1 , Enable = 2 , Reset = 5
sem naredil izpis horizontalne črte ter deluje povsem normalno brez zamika!!
po kodi :
For X = 0 To 128
For Y = 50 To 50
Pset X , Y , 1
Next
Next
se pravi, kakor pa vnesem črke pa mi naredi zamik na sredini!
a je to kaj v knjižnici narobe? |
|
Nazaj na vrh |
|
 |
protoncek Član

Pridružen-a: Sre 31 Jan 2007 9:41 Prispevkov: 9573 Aktiv.: 42.77 Kraj: Mengeš
|
Objavljeno: Čet Maj 31, 2012 10:23 pm Naslov sporočila: |
|
|
imaš zadnjo verzijo bascom kompilerja?
Pa---ko si preskušal moj program, ti je zamaknilo takoj, ko je napisalo črko na drugi polovici ali šele čisto pri zadnji? |
|
Nazaj na vrh |
|
 |
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 496 dni
Powered by phpBB © 2001, 2005 phpBB Group
|