Hallo liebe uC Gemeinde, ich wollte mir gern ein Oszilloskop bauen. Prinzipiell müsste das doch mit einem TI 92 und einer AD Wandler Platine möglich sein. Mich würde mal interessieren, ob jemand so etwas schon gemacht hat. Eine Möglichkeit wäre, einen Sensor für den TI zu kaufen und den danach umbauen. Welche Auflösung und Abtastrate wäre möglich ?
Also 100kHz das kann eine ADC liefern und ist i.O.. Auflösung sollte schon über 12 Bit liegen - optimal wären 16 Bit.
> Auflösung sollte schon über 12 Bit liegen - optimal wären 16 Bit.
Jo, ne, is klar.
> Jo, ne, ist klar.
Wieso denn nicht?
Entweder hat der TI einen 8Bit oder 16Bit Proz.. Bei 16Bit kann man auch
einen 16 Bit ADC anschließen oder?
>Mich würde mal interessieren, ob jemand so etwas schon gemacht hat.
Na klar. Ich hab mir einfach nen 24-Bit Wandler mit 60 MHz ausm Katalog
ausgesucht, ihn auf ein Steckbrett gedrückt, paar Kabel drumrum
verteilt, und ein Basic-Programm (20 Zeilen) geschrieben. Funktioniert
einwandfrei. Kann damit problemlos 800 V auf 0.1 µV genau messen.
;-)
>Wieso denn nicht?
Natürlich kannst du einen 16Bit (oder gleich 24Bit) AD-Wandler
anschließen.
Allerdings steht der Aufwand dafür in keinen vernünftigen Verhältnis zum
Nutzen: um wirklich die vollen Bit auszureizen brauchst du einen guten
Wandler, ein sauberes Layout und passende Entstörung/Filter evtl. sogar
Abschirmung.
Und zum Schluß rechnest du die Daten wieder runter auf dein 240x128
Pixel Display - dafür hätten 7 Bit auch ausgereicht.
Aber es ist machbar. :)
@ Gast 60 Mhz ist nicht schlecht und 800V auf 0,1 uV genau. Nicht schlecht. Du kannst einiges mehr als ich. Kannst mir ja mal einen Schaltplan posten. Es gab einmal ein ähnliches Projekt mit einem Gameboy. Ich bin ganz begeistert von meiner Idee.
Du kannst mit nem ASM-Programm den Link-port des Taschenrechners zu nem ttl uart umfunktionieren. Nen Prozessor liest den adc aus und schiebt die Daten per uart in den Taschenrechener.
@ Thomas Ekman (tkon), also zu den ADCs kann ich nur sagen, das die von LT und TI 16 Bit Auflösung haben und auch recht gut arbeiten und Filter sind kaum notwendig für erste Tests. Zu den 7 Bit ist zu sagen, dass der TI eine Zoom Fkt hat. Also könnten Bereiche mit höherer Auflösung vergrößert werden.
>Du kannst mit nem ASM-Programm den Link-port des Taschenrechners zu nem >ttl uart umfunktionieren. Nen Prozessor liest den adc aus und schiebt >die Daten per uart in den Taschenrechener. Guter Ansatz. Was hat der TI noch für Interfaces?
@Felix kannst du natürlich machen! ich hätte für einen ersten Test halt nen normalen 8Bit Wandler verwendet
@Felix Ich halte das Projekt für Dich als glatte Unterforderung. Das ist einfach zu läppisch, einen 24-Bit Wandler mit 60 MHz an einen TI Taschenrechner anzuschliessen. Ich meine, Du solltest lieber eine Seifenkiste bauen, mit der man zu Mond fliegen kann.
@ Thomas Ekman (tkon) ok., für Tests würde 8 reichen. Man möchte aber auch ein wenig nutzen haben. und noch ein Nachtrag zum TI 92: -> Motorola 68000 mit 10 MHz -> 2 MB RAM, 900k nutzbar
@ Klaus (Gast), bevor Du was schreibst, bitte lies die vorherigen Antworten!
@Felix Nö, muss ich nicht. Komisch, daß da Firmen mit Tektronix, LeCroy oder Agilent ganze Entwicklerteams mit so trivialen Aufgaben befassen. Aber wahrscheinlich haben die aber keine solch genialen Koryphäen.
Klaus wrote: > Komisch, daß da Firmen mit Tektronix, LeCroy oder Agilent ganze > Entwicklerteams mit so trivialen Aufgaben befassen. > Aber wahrscheinlich haben die aber keine solch genialen Koryphäen. Wieso komisch? Steht doch oben schon, warum es bei denen solche Entwicklerteams gibt, weil "mal eben" 16/24 Bit messen nun mal kein Pappenstiel ist. Es ist völlig(!) schwachsinnig, mit mehr als 7 Bit aufzunehmen, wenn man es nachher eh nur auf 128Bit (Y Achse) darstellen möchte. Das wurde hier auch schon gesagt.
Hi Felix, lass Dich von denen nicht runterziehn.... Ein ADC mit 16Bit Datenbus kann also 2^16=65535 verschiedene Informationen liefern. Wenn Du also 5V in 65535 "Volt-Stücke" aufteilst hat Du 5V/65535=79uV. 79uV ist ungefäh die Spannnung, die man an einem EEG (Gehirnströme) abnehmen kann. Der technische Aufwand um so genau zu messen ist gigantisch und kostet genauso viel -> gigantisch .... Gruß Marc
Ich hab mal nachgeschaut, der TI hat USB und einen sogenannten "Zubehöranschluss". Weiß jemand etwas über den "Zubehöranschluss"?
@Felix, @ Marc
> 79uV ist ungefäh die Spannnung, die man an einem EEG (Gehirnströme) abnehmen
kann.
Leute, das kann hinkommen, was notwendig ist:
Eure Gehirnströme abnehmen.
Dann schau' mer' mal, ob die im 16-Bit-Bereich liegen...
Ich hatte so an 16 Bit bei z.B. 50kHz gedacht. Der Proz. hat ja 10 MHz.
Da steht drin, wei viel Aufwand es ist, 24Bit zu messen: http://www.hpl.hp.com/hpjournal/pdfs/IssuePDFs/1989-04.pdf Bei 16Bit ist es zwar weniger Aufwand, aber da dein Taschenrechnerdisplay eh nur 7Bit Auflösung hat, würde ich lieber einen schnellen 8bit Wandler nehmen, und schauen, ob du das hinkriegst.
einen 16 Wandler zu nehmen bedeutet, die gesammte Vorverstaerkerstufe 16bit tauglich zu haben. 50kHz Analogbandbreite bedeutet irgendwas ab 250kSample. Also schau mal fuer Vorverstaerker, die das koennen. Irgendwas wie einen LT6910-1, falls Faktor 100 genuegt.
Felix wrote:
> Ich hatte so an 16 Bit bei z.B. 50kHz gedacht. Der Proz. hat ja 10 MHz.
Da kann man schon sehen, dass du scheinbar überhaupt keinen blassen
Schimmer davon hast, was du machst.
Von den hiervor genannten 250kSPS und 16 Bit ausgegangen macht das mal
locker 500Kilobyte pro Sekunde an Datenwust, den du verwursten musst. Wo
willst du den hinspeichern? Ins RAM?
Außerdem hat ein Oszilloskop auch noch eine Trigger-Einheit und nicht
nur einen A/D Wandler.
Ein Einfachtrigger auf der Basis des ADC Wertes ist moeglich, und ja, die Werte kommen eh ins RAM. Ein 1kWord als Ringbuffer genuegt.
@ Simon K. (simon), ich war von einer Abtastfrequenz von 50kHz ausgegangen. Das macht 100kiloByte. Und 900k stellt das RAM zur Verfügung. Die analoge Schaltungstechnik drumherum soll erst einmal nicht berücksichtigt werden. Also nur ein ADC! Die Frage ist: "Wie kann ich den ADC mit TI 92 verbinden?"
> Ich hatte so an 16 Bit bei z.B. 50kHz gedacht. Diese Auflösung haben nicht mal fertige Kauf-Oszis. Nur als Beispiel das hier: http://www.mercateo.com/p/589EL-40052950/Hameg_Oszilloskop_Analog_Digital_50MHz_HM507.html und noch einen: http://www.elektronikpraxis.vogel.de/themen/hardwareentwicklung/messtechnik/labormesstechnik/articles/37758/
50kSample mit 16 bit entspricht einer Soundkarte. Der ADC hat die Daten, einen ConversionStart und einen Read. Das kann ja nicht so schnell sein, den parallel anzuschliessen. Standardmaessig verknuepft man die beiden Controlsignale mit einer Adresse.
> ich war von einer Abtastfrequenz von 50kHz ausgegangen.
@ Felix
Schon mal was von Oversampling gehört? Vermutlich nicht, sonst würdest
du nicht so eine gequirlte Sch... schreiben. Um ein analoges
50kHz-Signal halbwegs vernünftig auf dem Oszi darzustellen, solltest du
es mit der 10-fachen Frequenz sampeln. Das wären bei 16 bit die
erwähnten 1MByte/s. Wie soll die winzige Prozessor in dem TI das
schaffen. Vielleicht schaust du dir auch mal die Daten kommerzieller
Oszilloskope an, insbesondere die Bandbreite. Bedeutet nämlich nix
anderes, als das ein 100MHz-Oszi ein Rechteck-Signal i.d.R. nur bis
ungefähr 10MHz sauber darstellen kann. Hier im Forum gibts ein bissel
was darüber zu lesen. Ach nochwas, die gängigen ADCs werden nur noch in
einem Gehäuse gefertigt, was ich als Hardcore-SMD bezeichne. Da ist nix
mehr mit selberlöten und bei hohen Frequenzen spielt auch das
Platinenlayout eine eintscheidende Rolle. Nur mal so als Denkanstoß.
Kopfschüttel...
@ Gast (Gast) es geht nicht um die durch Mittelung und neuen Entscheidungsschwellen gewonnenen Bits, sondern darum, ein Konzept zu finden, wie man mit dem TI möglichst schnell und genau misst. Warum Oversampling, wenn es doch 16 Bit ADCs gibt? Man braucht ja nicht alle Bits auslesen. Für erste Tests würden schon 8 Bit reichen. Mein Problem ist jetzt nicht das Abtasttheorem, sondern die Schnittstelle.
Du hast gleich zwei Probleme: 1. Hast Du die Theorie hinter der ganzen Sache noch nicht verstanden, das ist besonders Deinem letzten Posting überdeutlich zu entnehmen. OK, das könntest Du mit etwas Lernwillen vielleicht noch nachholen, wenn da nicht das zweite Problem wäre. 2. Hast Du dich leider als völlig lernresistent erwiesen. Die Leute erzählen Dir immer wieder haarklein, warum Deine Idee nicht so einfach funktioniert aber Du merkst einach nichts...
Ihr seid gemein, lasst ihn doch selber zur Überzeugung kommen, dass das nicht so einfach geht. Was du wahrscheinlich am dringendsten suchst sind Daten zum verwendeten Protokoll. Hier steht fast alles: http://www.ticalc.org/pub/text/calcinfo/tixx_guide.zip Und dann musst du nur noch einen AVR programmieren, der die Daten aus dem AD-Wandler einliest und zum TI rüberschiebt.
Hallo Felix 1. Nimm doch mal ein Blatt Papier und mal eine Sinusschwingung und eine Sägezahnschwingung auf, etwa 10cm breit. 2. Dann malst Du auf jede dieser Kurven im Abstand von ca. 1cm zehn Punkte. 3. Jetzt überlegst Du Dir, welche Punkte weggelassen werden können, um noch eindeutig erkennen zu können, daß es sich um einen Sinus bzw. Sägezahn handelt. Noch ein Tip: Mit dem Oversamling will man nicht die Auflösung des AD-Wandlers (Bits) erhöhen, sondern die Auflösung im Zeitbereich. Mfg.
Was soll denn nicht gehen? Natuerlich geht es. Mit 50kSample kann man gerade noch einen reinen Sinus von 15kHz oder so erkennen. Dass dieser und einer mit 85kHz gleich aussehen ist nicht wichtig hier. Vielleicht ist der Frager ja mit 1kHz zurieden ?
Seine Antwort zeigt aber, dass er das noch nicht verstanden hat (siehe Oversampling).
@ B e r n d W. (smiley46), Oversampling wird dazu verwendet um die Auflösung (Bits) zu erhöhen. Das Abtasttherom muss immer eingehalten werden.
>welche Punkte weggelassen werden können, um >noch eindeutig erkennen zu können, daß es sich um einen Sägezahn handelt. Man braucht 3 Punkte ;-P
Dank TI (Gast) hab ich folgendes herausgefunden: dBus: 45 to 50 kilobits per second USB: full-speed (FS, 12Mbit/s)
Felix wrote:
> USB: full-speed (FS, 12Mbit/s)
Hat der Taschenrechner kein PCI Express? Ich würde das benutzen.
Der TI92 ist schon ein toller Taschenrechner. Aber es ist wirklich Blödsinn den als Oszilloskop mißbrauchen zu wollen. Erstens ist das Display viel zu klein, zweitens ist die Schnittstelle viel zu langsam (der große Stecker ist nur für ein externes Display für Lehrer) und drittens müsste man in Assembler irgendwas schreiben um die Werte vom ADC anzuzeigen oder man muss einen Mikrocontroller dazwischenschalten, der die Daten direkt in etwas umwandelt, was der TI92 einlesen kann. (Man kann ja zwischen zwei TI92 Vektoren und Matrizen übertragen.) Also Felix, wenn du sowas wirklich machen willst, dann nimm einen ATmega8, der hat einen 10-Bit ADC eingebaut und den gibt es im DIL Gehäuse. Einfach 5V als Versorgnungsspannung und du kannst Werte im Bereich zwischen 0 und 5V einlesen. Für höhere Spannungen nimm einen Spannungsteiler. Wie man mit dem ATmega8 Werte einliest, findest du hier in der Artikelsammlung oder bei Google. Dann guck dir mal an, wie kompliziert das Datenprotokoll ist, das die TI92 untereinander verwenden. Wenn es nicht besonders kompliziert ist, dann schicke die Daten als Matrix. Wenn du das Format nicht rausbekommst dann installier Fargo II und zeig die Daten an indem du die einfach in den Bildspeicher schreibst. Ist im Prinzip nicht besonders kompliziert, wenn man Ahung von Assembler hat.
dieser thread ist wirklich toll, besonders schön und unterhaltsam finde ich, wie sämtliche ironie von felix abperlt, da er nicht einmal beissenden spott als solchen erkennt. einfach köstlich. übrigens einen 16-bit/50kHz adc an den ti zu knüppern ist pillepalle. ich konstruiere gerade einen kernspintomographen mit einem ti92, ;-)
dieser thread zeigt mal wieder wie voll das forum an arroganten leuten ist. echt zum brechen...
Wenn das Ganze überhaupt was taugen soll, dann muss als erstes mal ein A/D Wandler her, der selber mit einer fest einstellbaren Rate die Samples nimmt. Wird das per Software gemacht, dann gibt es Jitter bei den Samplepunkten. Die nächste Hürde ist dann ein Trigger der was taugt.
Vielleicht eine weitere Moeglichkeit. Ich habe ein einfach zu bauendes Oszilloskop entwickelt; umfangreiche Infos zum Design etc. hier: http://www.instructables.com/id/LCS_1M_A_Full_Featured_Low_Cost_Hobby_Oscillosc/ und http://www.pdamusician.com/lcscope/ Ist natuerlich kein High-End-Geraet, das mit einem Tektronix-Oszi oder so auch nur annaehernd konkurrieren koennte, aber die Sample-Rate (1 MS/sec) und Bandbreite (400 kHz) erfuellen die originalen Anforderungen in diesem Thread; bis ca. 150 kHz kann man sinnvoll Signale darstellen. Zwei Kanaele, voller analoger Frontend (Engangsverstaerker) mit softwaremaessig einstellbarer Verstaerkung, etc. Das Oszi hat eine einfache serielle Schnittstelle (19200 baud, aber kann man einfach auch langsamer laufen lassen), die uC-Firmware ist Open Source, es sollte also technisch ohne weiteres moeglich sein, das Geraet vom TI-Rechner her zu steuern anstatt vom PC. Keinerlei Mindestanforderungen an das steuernde Geraet (PC oder Rechner etc.), also macht ein langsameres Geraet bloss die Anzeige langsamer, aber funkionieren tut's trotzdem. Wolfgang
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.