Hallo,

Ik heb een lpt interface gemaakt en heb 8 ingangen bijgemaakt met een schuifregister.

Nu zou ik graag spanningen meten en later misschien ook een oscilloscoop maken.

Ik vind genoeg analoog digitaal converters (ADC0803, 804, ...) maar deze kunnen geen negatieve spanning meten (Wat ik wel zou willen voor een oscilloscoop).

Weet er iemand een ADconverter die dat wel kan? (liefst met 8 bit uitgang)

Je denkt te moelijk, gebruik een voorspanning.

Een spanning die je nulnivo omhoog brengt, een offset.

Maxim heeft van die converters. Als je een voorspanning neemt dan heb je vaak een grotere afwijking. Wat je ook kan doen is een gescheiden voeding nemen en die met de 0V op je minimale spanning zetten en dan met een gescheiden input samples nemen.

Als je negatieve spanningen wilt gaan meten dan zou ik allereerst geen 8bit A/D gebruiken.

Met een offset op 2.5V houd je maar een resolutie over van 128 Bytes positief en 128 negatief.

Om het programma van de oscilloscoop te maken, wou ik in VBA Excel om de milliseconde de spanning laten invullen in een cel en daar dan een grafiek van maken, maar dit duurt veel te lang.

Nu wou ik eerst de spanningen laten invullen in variabelen en dan daarna deze variabelen in cellen invullen om zo een grafiek te tekenen.

Ik wil dit op de volgende manier doen:


Dim teller As Integer
For teller = 1 To 1000
waarde & teller = PortIn(&H379)
sleep 1
Next

For teller = 1 To 1000
Application.ActiveWorkbook.Sheets(1).Cells(teller+1, 2) = waarde & teller
Next

Ik wil dat er dus achtereenvolgens waarde1, waarde2, waarde3, ..., waarde1000 variabelen gemaakt worden, maar deze code werkt niet.

Wat moet ik in plaats van het &-teken gebruiken?

Op 7 september 2009 20:25:50 schreef Henry S.:
Een spanning die je nulnivo omhoog brengt, een offset.

Als ik het goed voor heb moet ik dus op V+in 2,5 V zetten en dan geeft 0V ingangsspanning als resultaat 128?

Nee fout, je referentie moet 5V blijven.

Maar als ik het goed voorheb, is de offset toch iets anders als de referentiespanning?
De referentiespanning stelt de breedte van het meetbereik in (5V zonder iets op de Vref/2 pin te zetten)?
De offset brengt dan het 0-niveau omhoog?

Maar op welke pin moet de offset dan komen? En hoeveel volt?

Op de ingang, en zie vorige posts...

[Bericht gewijzigd door Henry S. op (11%)]

Maar op V+ of V- ?
Gaat het met 2 weerstanden in serie of moet het echt een negatieve spanning zijn t.o.v. gnd?

(Ik zou deze mooie IC niet graag beschadigen, daarom wil ik het graag zeker weten :-) )

[Bericht gewijzigd door elektronica op (29%)]

Op 15 oktober 2009 22:04:56 schreef elektronica:
Maar op V+ of V- ?

Op V+, zo onduidelijk is de datasheet ook weer niet.

Gaat het met 2 weerstanden in serie of moet het echt een negatieve spanning zijn t.o.v. gnd?

Een negatieve spanning, waar haal je dat vandaan?
Het kan met een simpele spanningsdeler.

Dat had ik al geprobeerd. Als ik alleen twee weerstanden van 17kohm in serie zet, de middens aan V+ hang en geen ingangsspanning aansluit, geeft hij nog steeds waarde 0.

Ik krijg alleen 128 als ik V- ook aan gnd hang. Dan staat er op de ingang altijd 2,5 V. Dit kan toch niet de bedoeling zijn?

Op 15 oktober 2009 22:33:51 schreef elektronica:
Ik krijg alleen 128 als ik V- ook aan gnd hang. Dan staat er op de ingang altijd 2,5 V. Dit kan toch niet de bedoeling zijn?

Ja, dat is de bedoeling van een offset. En idd moet de V- dan aan de gnd, je meet differentieel tussen V+ en V-.

Op je 2.5V komt je signaal,en met deze opstelling komt dat het neer op een wisselspanning die aanbiedt via een condensator.

Is je V+/V- wel zwevend tov de rest van je schakeling, of zit hij stiekem al ergens met een 0V-referentie aan de GND van je meetcircuit?

Op 16 september 2009 18:49:31 schreef elektronica:
wou ik in VBA Excel om de milliseconde de spanning laten invullen in een cel en daar dan een grafiek van maken

Vergeet dat maar, Windows timers zijn maar goed vanaf een 50tal milliseconden en dan nog zit er een hoop spreiding tussen.
Als je zou zeggen: iedere seconde dan zou het wat haalbaarde zijn.

Ik heb dus nu:



Vcc---17kohm------17kohm------gnd
               |         |
   naar+ ------|         |-----naar-
    in         |         |      in
              V+         V-

Als ik op + en - in niets aansluit, heb ik 128.
Als ik op + en - in 1,20V aansluit, heb ik 78, juist hetzelfde als dat ik de weerstanden weglaat.
Lijkt mij ook redelijk logisch: over de rechtse 17kohm-weerstand zit 2,5V en je zet er rechtstreeks een andere spanning op. Dan heeft die andere spanning meer invloed.
Dit kan zo toch nooit +/-198 als waarde geven?

Op 16 oktober 2009 13:07:08 schreef mbbneon:
[...]

Vergeet dat maar, Windows timers zijn maar goed vanaf een 50tal milliseconden en dan nog zit er een hoop spreiding tussen.
Als je zou zeggen: iedere seconde dan zou het wat haalbaarde zijn.

Dat heb ik nu ook ondervonden. Bij velleman hebben ze ook oscilloscopen om op de pc aan te sluiten. Hoe hebben ze die software dan gemaakt?

Of moet daar nog ergens een condensator tussen?

[Bericht gewijzigd door Henry S. op (2%)]

Op 17 oktober 2009 20:01:55 schreef elektronica:
[...]
Dat heb ik nu ook ondervonden. Bij velleman hebben ze ook oscilloscopen om op de pc aan te sluiten. Hoe hebben ze die software dan gemaakt?

De hardware zorgt dan voor de timing. Meestal zit er een fpga met een stukje geheugen in. PC geeft dan alleen weer en krijgt de data in stukjes van de scope. Dit gaat dan weer via USB, en daarbij is het nooit zeker dat je data kunt versturen omdat je last hebt van andere gebruikers op dezelfde bus. Vandaar het geheugen aan de fpga. (Overigens kan het ook met een pic/avr, maar die zijn vaak niet snel genoeg.)

Ik heb al veel op google gezocht, maar ik vind er nergens hoe je ervoor kan zorgen dat er bij 0V als waarde 128 uitkomt. In de datasheet lees ik eigelijk ook alleen maar dat als je 0,5V op V- zet dat dan 0,5V overeenkomt met waarde 0.

Is dit eigenlijk wel mogelijk met dit IC? In schema's die ik gevonden heb waarin men dit wil doen, zetten ze voor de ingang nog een bijkomende schakeling die detecteert of de spanning positief of negatief is, maar dan heb je een extra ingang nodig en dit doe ik liever niet.

Of kent iemand misschien een schakeling waarmee je twee spanningen kan optellen? Dan zet ik op één ingang 2,5V en de andere ingang gebruik ik dan om de te meten spanning op aan te sluiten.

Ik heb nog geprobeerd om het zo te doen:


Vcc---17kohm----------17kohm------gnd
(5V)               |          |
                   |          |
      naar +       |          |--------------naar -
       in          |          |               in
        |          |          | 
       10kOhm     10kOhm      |
        |          |          |
        |          |          |
        ------------          |
             |                |
             |                |
            V+                V-

Maar dit werkt ook niet.
Ik heb ook op V- -2,5V gezet, maar dat lost ook niets op.

Ik denk dat de enige oplossing een opamp als sommator zal zijn.

Dan komt 0V overeen met 8 en 4,5V met 255.

Nu gebruik ik dit schema om voor de ingang te zetten:



|----------------------------Vcc van opamp
|
|       -------------------------------------------------------
|       |                                                     |
|       |---10kohm-------10kohm--                             |
|                  |            |                             |
|          +       | |\         |                             |
|+    naar--10kohm---|-\        |                             |
5V    ingang         |  \_______|--------naar ingang ADC      |
|-        |-         |  /                                     |
|--------------------|+/                                      |
|     |              |/                                       |
|+   pot                                                      |
5V   meter <---------------------------------------------------
|-    |
|     |
|-------------------naar gnd van opamp

Nu komt +2,5V overeen met 0 en -2,5V met 255.
Ik heb even de plus en min van mijn ingang met elkaar verbonden en dan de potmeter ingesteld zodat de ADC als waarde 128 aangeeft.
Dan maakte ik de verbinding terug los en sloot mijn stroombron er op aan. Als ik deze op 0V zet, is de waarde al 190. Bij mijn andere stroombron is dit 180 en 1V geeft 128.
Ik dacht dit op te lossen door permanent een 100kOhm parallel te zetten met de ingang, maar dit lost het niet op. Een 10kOhm weerstand ook niet.

Hoe kan ik dit verhelpen?

Op 30 oktober 2009 19:06:42 schreef elektronica:
Nu gebruik ik dit schema om voor de ingang te zetten:



|----------------------------Vcc van opamp
|
|       -------------------------------------------------------
|       |                                                     |
|       |---10kohm-------10kohm--                             |
|                  |            |                             |
|          +       | |\         |                             |
|+    naar--10kohm---|-\        |                             |
5V    ingang         |  \_______|--------naar ingang ADC      |
|-        |-         |  /                                     |
|--------------------|+/                                      |
|     |              |/                                       |
|+   pot                                                      |
5V   meter <---------------------------------------------------
|-    |
|     |
|-------------------naar gnd van opamp

Nu komt +2,5V overeen met 0 en -2,5V met 255.

Kijk, dat is de uitgebreide optie, bij gebrek aan een wisselspanning.

Dan maakte ik de verbinding terug los en sloot mijn stroombron er op aan. Als ik deze op 0V zet, is de waarde al 190. Bij mijn andere stroombron is dit 180 en 1V geeft 128.

Wat voor een stroombron, en wat meet je op in en uitgangen van de opamp?