Robot, Servo o ir

Robot, CNC, Pneumatik, Hydraulik, mm
Användarvisningsbild
Jine
Inlägg: 1794
Blev medlem: 21 juli 2004, 20:25:56
Skype: Jim.Nelin
Ort: Trångsund, Stockholm
Kontakt:

Inlägg av Jine »

Och hur skulle ja kolla det med en multimeter?

Hur genererar man 38khz pulser då? kod? hittade inget vettigt på google
Användarvisningsbild
strombom
Inlägg: 3305
Blev medlem: 27 maj 2003, 10:50:20
Ort: Västra Götaland
Kontakt:

Inlägg av strombom »

kolla med multimeter.. mät spänningen och se när den reagerar och om spänningen är rätt

du kan göra en loop som loopar i 38kHz kanske

/Johan
Användarvisningsbild
Chribbe76
EF Sponsor
Inlägg: 1167
Blev medlem: 17 januari 2004, 22:43:17
Ort: Stockholm

Inlägg av Chribbe76 »

Jag har pillat med en reflexdetektor dom senaste dagarna (fast mest grillat picar).
Den funkar riktigt bra faktiskt, verkar helt omöjlig att störa med ir-fjärrkontrollers.
Programmet är skrivet i assembler.

http://ake.myftp.org/forum/ReflexSensor_V1.asm.txt

Bild
Användarvisningsbild
Jine
Inlägg: 1794
Blev medlem: 21 juli 2004, 20:25:56
Skype: Jim.Nelin
Ort: Trångsund, Stockholm
Kontakt:

Inlägg av Jine »

Chribbe, Hmm ok.. kan inte assembler då men ok..


strombom ok.. ska göra det.. men hur faenken loopar man i exakt 38khz? ingen som kan ge nån liten kud snutt? plz??

Mvh Jim
Användarvisningsbild
strombom
Inlägg: 3305
Blev medlem: 27 maj 2003, 10:50:20
Ort: Västra Götaland
Kontakt:

Inlägg av strombom »

exakt finns det inget som heter, men du får ta en liten delay-sats och sen kontrollera med oscilloskop eller frekvensräknare... eller så kan du räkna ut ett värde men det är jobbigt, särskilt om du inte använder assembler

/Johan
Användarvisningsbild
Jine
Inlägg: 1794
Blev medlem: 21 juli 2004, 20:25:56
Skype: Jim.Nelin
Ort: Trångsund, Stockholm
Kontakt:

Inlägg av Jine »

Hmm ingen som har ett oscilloskop o kan va gullig och göra det till mig så slipper jag investera i en 555 (isf måste jag vänta tills nästa vecka) ?



Eller hur ser ekvationen för att räkna ut det? ingen som har en aning?

EDIT!!

Picbasic Pro manualen:

FREQOUT

FREQOUT Pin,Onms,Frequency1{,Frequency2}

Produce the Frequency(s) on Pin for Onms milliseconds. Pin is automatically made an output. Pin may be a constant, 0-15, or a variable that contains a number 0-15 (e.g. B0) or a pin name (e.g. PORTA.0).

One or two different frequencies from 0 to 32767 hertz may be produced at a time.

FREQOUT generates tones using a form of pulse width modulation. The raw data coming out of the pin looks pretty scary. Some kind of filter is usually necessary to smooth the signal to a sine wave get rid of some of the harmonics that are generated:

Bild

FREQOUT works best with a 20MHz oscillator. It can also work with a 10MHz oscillator and even at 4MHz, although it will start to get very hard to filter and be of fairly low amplitude. Any other frequency will cause FREQOUT to generate a frequency that is a ratio of the actual oscillator used and 20MHz.

FREQOUT is not supported on 12-bit core PICmicro MCUs due to RAM and stack constraints.

' Send 1KHz tone on Pin1 for 2 seconds
FREQOUT PORTB.1,2000,1000
' Send 350Hz / 440Hz (Dial Tone) for 2 seconds
FREQOUT PORTB.1,2000,350,440





Dvs FREQOUT PORTB.2,1,38000 bör skapa en 38khz puls lr hur?


Mvh Jim
Användarvisningsbild
Xyzzy
Inlägg: 1222
Blev medlem: 30 januari 2004, 22:31:07
Ort: Uppsala, Sweden

Inlägg av Xyzzy »

Blir nog svårt, läs vad du själv "skrivit":
---
One or two different frequencies from 0 to 32767 hertz may be produced at a time.
---
maxfrekvens är alltså 32'767 Hertz
Användarvisningsbild
Jine
Inlägg: 1794
Blev medlem: 21 juli 2004, 20:25:56
Skype: Jim.Nelin
Ort: Trångsund, Stockholm
Kontakt:

Inlägg av Jine »

Aj fan.. :( får väl fixa en 555 endå da :( tror inte det finns så många altenativ för mig just nu :S Om ingen tar sig tid o mäta med Oscilloskop.. (jag har inget)
matseng
Inlägg: 2360
Blev medlem: 16 september 2003, 17:18:13
Ort: Dubai, United Arab Emirates
Kontakt:

Inlägg av matseng »

Kan man inte lura Basicen genom att säga att man har en 10 MHz kristall (fast man kör på 20) och be att få en ton på 19000 Hz istället?

Förvisso kommer alla delay-kommandon att bli hälften så långa i programmet och alla baudrates att bli dubbla hastigheten, men det kan man ju stå ut med.
Användarvisningsbild
Jine
Inlägg: 1794
Blev medlem: 21 juli 2004, 20:25:56
Skype: Jim.Nelin
Ort: Trångsund, Stockholm
Kontakt:

Inlägg av Jine »

Tror det går genom ändra DEFINE OSC till 10.. Men vad hjälper det mig? jag behöver en HÖGRE frekvens inte en lägre lr hur?

Men jag som va så säker på att jag kunde stiffs porjket arbete utantill, hade missat en sak..

""För att klara av detta var vi tvungna att använda en
extra mikrokontroller med HPWM. Denna kan ge ut en
modulerad puls konstant, även om mikrokontrollerna är
upptagna med att utföra annat arbete. I detta fall IRljusets
modulering på 38khz eftersom det är denna
frekvens som IR-mottagaren reagerar på.""


Nu är bara frågan, vilka pic har HPWM?? O vad är HPWM? och hur kontrollerar man det?
matseng
Inlägg: 2360
Blev medlem: 16 september 2003, 17:18:13
Ort: Dubai, United Arab Emirates
Kontakt:

Inlägg av matseng »

Ja, borde den inte blir högre då?

Om du verkligen stoppar i en 10 Mhz kristall och talar om för basicen att du gjort det och sedan ber att få en 19000 Hz ton. Då kommer du att få en ton på 19000 precis som du begärt. Right?

Om du nu helt plötsligt byter ut kristallen mot en som är dubbelt så snabb utan att tala om det för basicen, vad tror du händer då? Då jobbar plötsligt allt dubbelt så snabbt och även tonen ut kommer att bli dubbelt så hög. 38000 Hz.
Användarvisningsbild
AndLi
Inlägg: 17116
Blev medlem: 11 februari 2004, 18:17:59
Ort: Knivsta
Kontakt:

Inlägg av AndLi »

Matseng: Jo det låter rätt.
matseng
Inlägg: 2360
Blev medlem: 16 september 2003, 17:18:13
Ort: Dubai, United Arab Emirates
Kontakt:

Inlägg av matseng »

Annars borde det faktiskt gå att trimma in 555'an manuellt utan oscilloskop.

Bygg 555'an med värden som borde ge kring 38 KHz och ha en trimpot och vrid tills du få signal ut ur mottagaren. Flytta sedan sändare och mottagare en bit från varandra så signalen försvinner, justera sedan trimpotten tills det blir signnal igen. Upprepa ett par gånger så har du hittat den optimala frekvensen för din mottagare.
Användarvisningsbild
$tiff
Inlägg: 4941
Blev medlem: 31 maj 2003, 19:47:52
Ort: Göteborg
Kontakt:

Inlägg av $tiff »

Släng in följande kodsnutt i ditt program så har du kontinuerlig 38kHz fyrkantsvåg ut på PortC.2
Obs! Gjord för PIC16F877A och 20MHz kristall.

Kod: Markera allt

'Initiate PWM for IR-modulation (38kHz, 50%dc @ 20MHz OSC).
TRISC.2 = 0		'PortC.2 output
CCP1CON = %00001100	'Mode select = PWM
T2CON = %00000100	'Timer2 ON + 1:1 prescale
PR2 = 130		'38kHz PWM
CCPR1L = 65		'50% duty cycle
För att få dina IR-sensorer att reagera måste du skicka ut ca 1ms långa pulser som är modulerade i 38 kHz. Detta kan du göra genom att sätta PortC.2 som utgång i 1ms, sen som ingång, så slipper du pilla på inställningarna för PWM-modulen.

Kod: Markera allt

trisc.2 = 0		' Set portc.2 to output
pause 1			' Pause 1 ms
trisc.2 = 1		' Set portc.2 to input
'Read inputs from IR-modules here
Känner mig snäll nu :D
Användarvisningsbild
Jine
Inlägg: 1794
Blev medlem: 21 juli 2004, 20:25:56
Skype: Jim.Nelin
Ort: Trångsund, Stockholm
Kontakt:

Inlägg av Jine »

Stiff.. Du är mer än snäll.. KRAM KRAM KRAM påre!! :D


Ultra bra också eftersom jag använder 16f877a o 20mhz ;) :D
Skriv svar