Poslao: 21 Sep 2008 18:10
|
offline
- Pridružio: 05 Avg 2006
- Poruke: 84
- Gde živiš: tamoDaleko
|
Potrebna mi je ideja kako pratiti 6 osovina preko induktivnih senzora pomoću pic 16f84 ili pic 16f628 i asemblera.
|
|
|
Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
|
|
Poslao: 21 Sep 2008 23:34
|
offline
- cerveni
- Počasni građanin
- Pridružio: 17 Apr 2008
- Poruke: 770
- Gde živiš: Taurunum
|
Šta treba pratiti broj okretaja ili pomeranje osovina napred nazad.
|
|
|
|
Poslao: 22 Sep 2008 15:08
|
offline
- Pridružio: 05 Avg 2006
- Poruke: 84
- Gde živiš: tamoDaleko
|
Praćenje pomoću induktivnog senzora tako da na osovini ili remenici registruje prolazak metalanog markera(ispupčenje ili glava vijka).Iduktivni senzor šalje impuls koji sam ja povezao na portove mikrokontrolera ali nije nešto kako treba pošto ne vidi svaki prolazak pokraj senzora ( ili je to vreme kratko da bi ga registrao moj program ).
|
|
|
|
Poslao: 22 Sep 2008 16:15
|
offline
- Ričard
- Lavlje srce
- Supermoderator
- Zver!
- Electro maintenance engineer
- Pridružio: 28 Nov 2006
- Poruke: 13745
- Gde živiš: Vršac
|
Koji induktivni senzori su u pitanju? One koje ja koristim u industriji rade na naponu od 12-30 VDC. PIC radi na 5 VDC. Mozda je u tome problem?
|
|
|
|
Poslao: 22 Sep 2008 21:21
|
offline
- Pridružio: 05 Avg 2006
- Poruke: 84
- Gde živiš: tamoDaleko
|
Nisam baš najbolje naveo naslov.Mislim da je problem u mome programu koji sam ja radio tj, ne registruje svaki prolazak senzora .Ideja je da signal sa senzora dovedem na Hex smith invertor pa sa njega dalje na portA.
Evo kako sam ja zamislio testiranje stanja na ulazima .U praksi se radi o šest senzora ,a ovo je primer za jedan:
pocetak btfss porta,1
call upis_1
btfsc porta,1
call upis_11
upis_1 movlw 0xff
movwf REG_1
return
upis_11 movlw 0xff
movwf REG_11
return
nakon testiranja sledi smanjivanje vrednosti REG i kad dođe do nule program skače na paljenje led diode zeleno ili ugašeno kada dođe do prestanka signala u roku od 4 sek ili palenja crvene led kada nema signala duže od 4 sek.
prva decf REG_1
skpnz
goto off_1
decfsz REG_11
goto zeleno_1
goto off_1
goto druga
mycity.rs/must-login.png
|
|
|
|
Poslao: 22 Sep 2008 21:32
|
offline
- cerveni
- Počasni građanin
- Pridružio: 17 Apr 2008
- Poruke: 770
- Gde živiš: Taurunum
|
Za praćenje brzine obrtaja lakše je da si uzeo hall-effect tranzistor a na renenici zalepio mali magnet.
Koliko se sećam a probao sam davno dva induktivna senzora oni reaguju na metal, ukoliko ti je remenica ili osovina od gvožđa reagovaće non-stop sve dok ga ne odaljiš od njih.
|
|
|
|
Poslao: 23 Sep 2008 17:50
|
offline
- Pridružio: 05 Avg 2006
- Poruke: 84
- Gde živiš: tamoDaleko
|
Nisu problem iduktivni senzori .Oni šalju signal prolaskom metalnog predmeta ,a to se u praksi izvodi tako da to bude npr.glava vijka na remenici ili neko slično ispupčenje na osovini .
Problem je u programu za obradu signala koji je nakon obrade 0 ili 1 na ulazu na port mikrokontrolera.
Program ne registruje svaku promenu stanja na ulazu i zato pitam dali neko ima neku drugu ideju za testiranje stanja ulaza za razliku od moje koja nije zadovoljavajuća.
|
|
|
|
Poslao: 25 Sep 2008 22:46
|
offline
- Pridružio: 11 Nov 2005
- Poruke: 134
- Gde živiš: Krusevac
|
tu postoji vise problema koji nisu razmatrani tvojom analizom.
Prvi:
Kontroler koji koristis mora da ima minimum sets interapt linija
drugi:
(Je problem koji ti u ovom slucaju imas) je sa impulsima od prekidaca koji u zavisnosti od broja obrtaja imaju razlicito trajanje pa moze da se dogodi da se neki od impulsa broji vise od jednom a neki impuls ne detektuje.
treci:
metod sabiranja impulsa i njihov prioritet za prikazivanje
...
Problem x :
potreban je brz kontroler sa dovoljno interapt linija ili vise kontrolera sa jednom interapt linijom u I2C BUS vezi sa Centralnim procesorom koji ce obradjivati rezultate dobijene sa SLAVE kontrolera.
|
|
|
|
Poslao: 26 Sep 2008 16:10
|
offline
- Pridružio: 05 Avg 2006
- Poruke: 84
- Gde živiš: tamoDaleko
|
Koji kontroler mogu koristiti ,a da ima šest interapta stim da nije iz neke više klase .
Svakom promenom stanja sa nule na jedinicu ili obrnuto treba da se pali dvobojna led dioda sa dva pina u zeleno i da sija recimo 1/2 sek. Nakon toga led zeleno se gasi i čeka se sledeća naizmenična promena stanja na ulazu da bi ponovno bila upaljena led zeleno .Ako vreme menjanja stanja bude duže od 3 sek pali se crvena led.
Gašenje led sam zamislio postavljenjem odgovarajućeg pina kao ulaz.
U prilogu dajem kompletan kod kako sam ja to zamislio tj,da ne bi prepisivao sve šest puta prikaz je za dva ulaza.
Da napomenem kod za registrovanje stanja na ulazu ne registruje svaku promenu stanja . Dalji deo koda radi .
mycity.rs/must-login.png
mycity.rs/must-login.png
|
|
|
|
Poslao: 01 Okt 2008 00:27
|
offline
- Pridružio: 11 Nov 2005
- Poruke: 134
- Gde živiš: Krusevac
|
Posto verovatno nisi radio sa vecim PIC MCU (ili postoji neki drugi razlog)...
Predlazem ti da problem razlozis i koristis jedan PIC 16f84 za jedan prekidac. Tako bi imao sest kontrolera programiranih za brojanje i jedan za 16F84 za sakupljanje impulsa odnosno 1 master i 6 slave kontrolera.
Pri cemu bi ti dosta pinova ostalo za eventualnu RS232 komunikaciju ili
neki LCD prikaz ili eventualne tastere za izbor nekih podesavanja i sl.
|
|
|
|