welke microcontroller is geschikt.
- pa3cvi
- Berichten: 326
- Lid geworden op: 20 dec 2005, 17:02
- Roepletters: pa3cvi
- Locatie: Eindhoven
- Contacteer:
welke microcontroller is geschikt.
Ik ben alweer en tijdje bezig om de potmeterstand van een electronische keyer, waarmee ik mijn seinsnelheid regel, om te zetten in correcte snelheidsweergave, weergegeven op een LCD display met een HD44780 chip. De 16F628(A) biedt die mogelijheid. Als input dus de potmeterweerstand in serie met een condensator. Aan de ingangspoort wordt de ontladingstijd gemeten, afhankelijk van de (stereo) potmeterstand, en met een klein programma'tje omgezet naar waarden die de seinsnelheid moeten weergeven.
Ik heb die mogelijkheid uitvoerig getest met verschillende weerstanden, condensatoren en verschillende schaalwaarden in de software, maar het blijkt toch dat het geheel niet in overeenstemming te brengen is om correcte waarden op het LCD af te lezen..
Ik wil nu een tweede mogelijkheid uitproberen, die een meer directere omzetting moet geven.
Aan de uitgang van mijn keyer zie ik een "bijna" blokvormig ingangs signaal met een amplitude van 0-5 Volt, waarvan de frequentie evenredig is met de ingestelde seinsnelheid. Dat signaal wil ik benutten als input van de PIC. Met een stukje software moet het toch mogelijk zijn de correcte waarden van de seinsnelheid weer te geven?
Ik wat zitten meten en rekenen en heb de volgende gegevens over het frequentie bereik van 10 t/m
40 woorden per minuut. Zie onderstaande tabel. Mijn vragen aan jullie:
1. welke PIC komt daar het meest voor in aanmerking?
2. Kan het met de 16F628?
3. Zijn er misschien al soortgelijke voorbeelden van op internet te vinden?
Conversietabel
[Wrd/min] f [Hz]
10 1.790
11 1.969
12 2.148
13 2.327
14 2.506
15 2.685
16 2.864
17 3.043
18 3.222
19 3.401
20 3.580
21 3.759
22 3.938
23 4.117
24 4.296
25 4.475
26 4.654
27 4.833
28 5.012
29 5.191
30 5.370
31 5.549
32 5.728
33 5.907
34 6.086
35 6.265
36 6.444
37 6.623
38 6.802
39 6.981
40 7.160
Ik heb die mogelijkheid uitvoerig getest met verschillende weerstanden, condensatoren en verschillende schaalwaarden in de software, maar het blijkt toch dat het geheel niet in overeenstemming te brengen is om correcte waarden op het LCD af te lezen..
Ik wil nu een tweede mogelijkheid uitproberen, die een meer directere omzetting moet geven.
Aan de uitgang van mijn keyer zie ik een "bijna" blokvormig ingangs signaal met een amplitude van 0-5 Volt, waarvan de frequentie evenredig is met de ingestelde seinsnelheid. Dat signaal wil ik benutten als input van de PIC. Met een stukje software moet het toch mogelijk zijn de correcte waarden van de seinsnelheid weer te geven?
Ik wat zitten meten en rekenen en heb de volgende gegevens over het frequentie bereik van 10 t/m
40 woorden per minuut. Zie onderstaande tabel. Mijn vragen aan jullie:
1. welke PIC komt daar het meest voor in aanmerking?
2. Kan het met de 16F628?
3. Zijn er misschien al soortgelijke voorbeelden van op internet te vinden?
Conversietabel
[Wrd/min] f [Hz]
10 1.790
11 1.969
12 2.148
13 2.327
14 2.506
15 2.685
16 2.864
17 3.043
18 3.222
19 3.401
20 3.580
21 3.759
22 3.938
23 4.117
24 4.296
25 4.475
26 4.654
27 4.833
28 5.012
29 5.191
30 5.370
31 5.549
32 5.728
33 5.907
34 6.086
35 6.265
36 6.444
37 6.623
38 6.802
39 6.981
40 7.160
- coolepascal
- Berichten: 3745
- Lid geworden op: 15 mar 2010, 14:45
- Locatie: ZL
- Contacteer:
Re: welke microcontroller is geschikt.
Het probleem is dat je schakeling niet linear is.
Met jouw oplossing kun je prima uit de voeten als je gebruik maakt van een calibratie tabel.
Dat doe je als volgt
1) lees de tijd uit om je condensatortje te vullen, met de schakeling die je al gebouwd hebt.
2) bepaal met de gemeten waarde een positie in een tabel waarin je de voor elke snelheid een waarde zet (zie je eigen tabel hierboven) gebruik eventueel een tweede tabel om de bijhorende getallen voor het display op te slaan
Een andere truuk is de C niet via een R te laden maar vanuit een contstante stroombron (een vast ingestelde transistor wellicht) waardoor je potmeter wel een lineare waarde afgeeft
je kan een externe ADC gebruiken, daar zijn zat voorbeelden van
een andere CPU kan ook, denk bijvoorbeeld eens aan zo'n spotgoedkope MSP430 of gewoon een Atmel, maar ook zijn er zat PIC processortjes met een onboard ADC.
Met jouw oplossing kun je prima uit de voeten als je gebruik maakt van een calibratie tabel.
Dat doe je als volgt
1) lees de tijd uit om je condensatortje te vullen, met de schakeling die je al gebouwd hebt.
2) bepaal met de gemeten waarde een positie in een tabel waarin je de voor elke snelheid een waarde zet (zie je eigen tabel hierboven) gebruik eventueel een tweede tabel om de bijhorende getallen voor het display op te slaan
Een andere truuk is de C niet via een R te laden maar vanuit een contstante stroombron (een vast ingestelde transistor wellicht) waardoor je potmeter wel een lineare waarde afgeeft
je kan een externe ADC gebruiken, daar zijn zat voorbeelden van
een andere CPU kan ook, denk bijvoorbeeld eens aan zo'n spotgoedkope MSP430 of gewoon een Atmel, maar ook zijn er zat PIC processortjes met een onboard ADC.
Niet gehinderd door enige kennis van zaken.
- pa3cvi
- Berichten: 326
- Lid geworden op: 20 dec 2005, 17:02
- Roepletters: pa3cvi
- Locatie: Eindhoven
- Contacteer:
Re: welke microcontroller is geschikt.
Even voor de duidelijkheid, ik maak gebruik van een stereo potmeter waarvan het ene deel de reeds bestaande potmeter van de keyer is, het andere pot-deel (gescheiden van de eerste) de potmeter van mijn schakelingetje.
Nu kan ik wel proberen om de schakeling een lineair verloop te geven, jouw oplossingen, ware het niet dat ook de potmeter van mijn keyer geen lineair gedrag vertoont en dan wordt het wel erg complex om dit probleem op te heffen.
Daarom is dat de reden van mijn keuze om meer direct te meten aan de uitgang van de keyer en deze te koppelen aan uireindelijk de LCD uitlezing
Nu kan ik wel proberen om de schakeling een lineair verloop te geven, jouw oplossingen, ware het niet dat ook de potmeter van mijn keyer geen lineair gedrag vertoont en dan wordt het wel erg complex om dit probleem op te heffen.
Daarom is dat de reden van mijn keuze om meer direct te meten aan de uitgang van de keyer en deze te koppelen aan uireindelijk de LCD uitlezing
Re: welke microcontroller is geschikt.
Ik weet niet wat je met "bijna" bedoelt, maar als het een redelijk net digitaal signaal is, kan je dit zeker meten met een 16f628.pa3cvi schreef: Ik wil nu een tweede mogelijkheid uitproberen, die een meer directere omzetting moet geven.
Aan de uitgang van mijn keyer zie ik een "bijna" blokvormig ingangs signaal met een amplitude van 0-5 Volt, waarvan de frequentie evenredig is met de ingestelde seinsnelheid. Dat signaal wil ik benutten als input van de PIC. Met een stukje software moet het toch mogelijk zijn de correcte waarden van de seinsnelheid weer te geven?
Perfect linear, dus dat maakt het simpel. Wat me wel verbaast is de frequentie. Dit komt neer op 4.66 * dit-tijd (5.6 als CODEX als standaard wordt gebruikt). Ik neem aan dat je de frequentie hebt gemeten en dat het echt in Herz is, niet in kilo-Herz. Hoe heb je de wpm-snelheid bepaald?pa3cvi schreef: Ik wat zitten meten en rekenen en heb de volgende gegevens over het frequentie bereik van 10 t/m 40 woorden per minuut. Zie onderstaande tabel.
1. Eigenlijk bijna iedere PIC (of andere microcontroller) waar je het display op aan kunt sluiten. 16F of 18F- serie is het meest logisch.pa3cvi schreef: Mijn vragen aan jullie:
1. welke PIC komt daar het meest voor in aanmerking?
2. Kan het met de 16F628?
3. Zijn er misschien al soortgelijke voorbeelden van op internet te vinden?
2. Jawel.
3. Niet dat ik weet. Maar als je al tekst op het display krijgt, ben je al een heel eind. Je moet nog twee dingen doen:
>a. meten hoe lang een periode duurt (en dat kan vrij eenvoudig op deze frequentie als je geen andere dingen hoeft te doen tijdens dat meten).
>b. omrekenen van tijd naar snelheid.
Hoe dat er in code uit ziet hangt af van de taal die je gebruikt op de PIC te programmeren.
Succes,
Joep
- coolepascal
- Berichten: 3745
- Lid geworden op: 15 mar 2010, 14:45
- Locatie: ZL
- Contacteer:
Re: welke microcontroller is geschikt.
Tja als je al zover bent om de hele handel werkend te krijgen, dan is dat laatste probleem toch niet zo lastig ?
Waarom gebruik je eigenlijk een seperate uC ? je kan toch prima een keyer met alles erop en eraan maken en tevens een display aansturen ?
Waarom gebruik je eigenlijk een seperate uC ? je kan toch prima een keyer met alles erop en eraan maken en tevens een display aansturen ?
Niet gehinderd door enige kennis van zaken.
- pa3cvi
- Berichten: 326
- Lid geworden op: 20 dec 2005, 17:02
- Roepletters: pa3cvi
- Locatie: Eindhoven
- Contacteer:
Re: welke microcontroller is geschikt.
Coolepascal,
Soms ben je zo gehecht aan iets dat je met veel moeite lang geleden zelf gebouwd heb,
dat je er geen afstand van witl doen en alleen maar verder wilt uitbouwen.
Soms ben je zo gehecht aan iets dat je met veel moeite lang geleden zelf gebouwd heb,
dat je er geen afstand van witl doen en alleen maar verder wilt uitbouwen.
- pa3cvi
- Berichten: 326
- Lid geworden op: 20 dec 2005, 17:02
- Roepletters: pa3cvi
- Locatie: Eindhoven
- Contacteer:
Re: welke microcontroller is geschikt.
Joep,
Sorry dat ik je op het verkeerde been heb gezet bij de vermelding van de waarden in de tabel.
Het zijn theoretische waarden, herleid van PARIS, vandaar de lineariteit van het geheel. Waarschijnlijk heb ik dat verkeerd uitgerekend gezien jouw opmerking: f = 4.66 * dit-tijd.
Ik ga eerst eens meten wat de frequenties werkelijk zijn, met mijn scoop gaat dat niet gezien de relatief lage frequenties, maar ik vind wel een andere manier.
Sorry dat ik je op het verkeerde been heb gezet bij de vermelding van de waarden in de tabel.
Het zijn theoretische waarden, herleid van PARIS, vandaar de lineariteit van het geheel. Waarschijnlijk heb ik dat verkeerd uitgerekend gezien jouw opmerking: f = 4.66 * dit-tijd.
Ik ga eerst eens meten wat de frequenties werkelijk zijn, met mijn scoop gaat dat niet gezien de relatief lage frequenties, maar ik vind wel een andere manier.
Re: welke microcontroller is geschikt.
ja kan natuurlijk de micro controler ook een digitalle pot meter besturen Bv een x9103p.
Dit betreft bv een 10k potmeter, heb deze zelf ook eens gebruikt.
Die de snelheid weer regelt van de keyer.
Ipv eerst meten en dan weergeven
Dan behooef je geen analoge spanning te meten en bedienning kan dan via twee knopjes up / down,
PE1LGW
Dit betreft bv een 10k potmeter, heb deze zelf ook eens gebruikt.
Die de snelheid weer regelt van de keyer.
Ipv eerst meten en dan weergeven
Dan behooef je geen analoge spanning te meten en bedienning kan dan via twee knopjes up / down,
PE1LGW
Condor 3000, Icom7000 IC2 E, IC25, FT270, FT11, RS9044, Teleport 9, Kenwood TR2400, TMG 707, Diamond x30, realistic 2005 scanner, home made J antenne. tevens rust huis voor T813 sets, Boafeng UV-5R, TYT UV3R, DVB sticky SDR, Nokia Mobira, Philips FM1000, Yeasu vx3, ft817.
"Nescius omnium curiosus sum" (Ik weet niets maar ben nieuwsgierig naar alles).
"Nescius omnium curiosus sum" (Ik weet niets maar ben nieuwsgierig naar alles).
Re: welke microcontroller is geschikt.
'Paris' is (inclusief de woordpause) 50 punten als ik het goed heb. Dit betekent dat de tijd (in ms) van 1 punt gelijk is aan:pa3cvi schreef: Ik ga eerst eens meten wat de frequenties werkelijk zijn
60.000ms/minuut / 50 punten / WPM = 1200 / WPM (ms)
Bij 12 WPM duurt een punt dus 100ms.
Van een digitale klok die gebruikt wordt voor deze punten, kun je probleemloos de periodetijd meten met de genoemde PIC. Je kunt bijvoorbeeld een lusje maken van 1ms en dan tellen hoe lang een periode duurt.
Pascal heeft natuurlijk gelijk: een keyer in de PIC stoppen is ook geen probleem. Ik heb beperkte ervaring met morse, maar desondanks een eenvoudige keyer gemaakt met een PICje. Overigens niet om het resultaat, maar omdat het leuk is. Als je set geen keyer heeft, kun je bij o.a. K1EL goedkoop een chipje bestellen met heel veel mogelijkheden.
Joep