Hallo, bin endlich dazu gekommen mein Hameg Interface mal fertig zu basteln und wollt das hier ma eben kurz vorstellen. Es ist ein Lesegerät für ein Hameg 205-3 (vielleicht gehts auch für andere?) dass über USB (FTDI Seriell-USB-Wandler) an PC angeschlossen wird, von wo aus eine kleine in Qt4 geschriebene App das ganze anzeigt. Auf der Platine kommt ein Amega32 zum Einsatz, der das Scope ausliest. Das ganze Interface des Scopes wird noch nicht ausgenutzt, man kann z.B. noch nicht beide Eingänge gleichzeitig anzeigen. Aber um mal ein Bild zu machen reicht es vollkommen aus. Man kann die empfangenen Daten auch als Bild abspeichern, in beliebigen Auflösungen. Buttons für das exportieren in eine Tabelle existieren auch schon, sind allerdings noch nicht implementiert ;) Wer keine GUI Nutzen will kann auch einfach ein Terminalprogramm nehmen wie HTerm. Die Befehle sind recht einfach gehalten. Die Platine hat eine galvanische Trennung zwischen dem PC und dem Oszilloskop über zwei Optokoppler. Alle Sachen sind im Anhang oder gibts hier: http://opencode.eu/Projects/Hameg2PC/
Hallo Fabian, das ist wirklich erstklassige Arbeit -- vielen Dank, dass Du sie mit uns teilst! Auf mein HM205-3 warte ich zwar noch (müsste morgen oder in den nächsten Tagen von eBay ankommen) -- Dein Interface werde ich aber nachbauen! Ist Dir diese Seite bekannt: http://www.s-line.de/homepages/bosch/hm205/ ? Das ist zwar fürs 205-2, aber vielleicht gibts dort noch nützliche Infos zum Protokoll zu finden. Viele Grüße, Sebastian
Danke für die Belobigungen. Die Seite kannte ich noch nicht, werde ich mir heute abend wenn ich zu Hause bin mal genauer anschauen. Scheint ja aber so, dass da was intern angeschlossen wird. Vermutlich ist das Interface bei der Version nicht rausgeführt. Ich habe mich schon mit einem anderen µC.net User unterhalten (über PM/Mail) und da ist noch etwas bei raus gekommen. Es soll auf jedenfall in den nächsten Wochen ne neue Version der Software sowohl für den µC als auch den Host geben. Dann soll auch die gleichzeitige Anzeige beider Kanäle unterstützt werden.
So, die "paar Wochen" haben sich etwas hingezogen, aber ich bin heute mal dazu gekommen nochmal an der Software Hand an zu legen. Es werden nun beide Kanäle angezeigt, im Bild ist auch die Rasterung vom Scope drin und man kann die eingelesenen Daten als Tabelle exportieren. Im Anhang ist die neue Version. Eine Windows Version ist vorkompiliert enthalten, die Linux Leute bekommen das auch so hin :D Zudem läuft das Programm wie man auf dem Screenshot sehen kann nun auch unter Linux einwandfrei. Und es hat noch ein paar kleine Verbesserungen gegeben, die die ganze App deutlich stabiler und benutzerfreundlicher machen. Z.B. merkt er sich die Einstellungen des letzten Starts.
Sorry, hatte im Release die Plugins für Qt vergessen, sonst funktioniert das Abspeichern von Bildern nicht ;)
Hallo Fabian, nochmals ein ganz, ganz großes Lob! Das ist ein tolles Projekt, das Du erstklassig umsetzt! Hut ab! Ich finde es toll, dass Du es mit uns teilst. Leider fehlt mir absolut die Zeit das Ding nachzubauen (Job ...), aber ich habe es aber nach wie vor fest vor! :-) Viele Grüße Sebastian
Hehe danke :) Die Zeit musst man sich dann halt mal nehmen. Dauert ja keine 3 Stunden das mal eben aufzubauen, wenn man alle Teile da hat ;) Fabian
Wäre es möglich das Interface auch für HP-GL-Anschlüsse umzusetzen? Dann würden nänmlich viele Scopes eine Readout-Funktionalität haben... Gruß! Sven
Öhhh kein Plan, ich kenne das Protokoll jetzt leider nicht und habe auch kein passendes Scope zum testen da, aber im Prinzip erwartet die PC-Software von der Hardware auf Anfrage eine Liste von Messwerten. Die jetzige Hardware bietet 16 I/Os, wovon 8 auf den Analog-Port gehen (momentan aber als Digital I/Os verwendet werden) und weitere 8 Leitungen auf den Port C gehen. Ich würde also mal vermuten, dass mit einem Adapter auch das Interface von HP ansteuerbar wäre. Die PC Software könnte dann noch etwas portabler gebaut werden. Momentan sind da z.B. in der Software fest die Anzahl der Samples und die Ausrichtung des Gitters an den Werten einprogrammiert, das müsste man dann mal in eine Config schmeißen ;)
Hallo Sven, präsisiere doch bitte mal, was Du Dir genau wünscht: möchtest Du Fabians Hardware so geändert haben, daß sie den Bildschirminhalt im HP-GL-Format an einer seriellen (oder parallelen) Schnittstelle ausgibt, oder möchtest Du die PC-Software so modifiziert haben, daß sie auch im HP-GL-Format eintreffende Daten anzeigen kann? Oder hast Du etwas ganz anderes im Sinn, auf das ich bisher nicht komme?
HB-IB: Helmuth Brunner Industrie Beleuchtungen Ich glaube nicht :D Was meinst du mit HB-IB? Und warum solls nicht HP-GL sein? Soweit ich das mitbekommen habe ist das doch auch ein "Standard" für Oszis und sowas, der halt nicht nur das Format wie man es von den Dateien her kennt umfasst sondern auch ein Hardware-Protokoll beinhaltet. Ich konnte dazu jedoch bislang keine Infos finden.
HP-IB ist die Kurzform von "Hewlett-Packard Interface Bus" und meint in etwa dasselbe wie GPIB (General Purpose Interface Bus), d.h. einen parallelen 8-Bit-Datenbus mit zusätzlichen Handshake- und Steuerleitungen. Mittels dieses Busses lassen sich Meßgeräte mit entsprechender Schnittstelle zu Meßplätzen für komplexe Meßaufgaben zusammenschalten. Gesteuert wird das Ganze dann von einem zentralen Prozessor, z.B. einem PC mit GPIB-Schnittstelle. Aber gib zu, das wußtest Du alles bereits ;D . Es gibt zahlreiche Meßgeräte, die eine GPIB-Schnittstelle besitzen, allerdings mit unterschiedlichsten Funktionsumfängen und Befehlssätzen. Es gibt (gab) auch eine Reihe von Stiftplottern, die eine solche Schnittstelle haben und das HP-GL-Format verstehen. Die meisten mit einer GPIB-Schnittstelle ausgestatteten Oszilloskope, Spektrum- und Netzwerkanalysatoren unterstützen die direkte Ausgabe des dargestellten Bildschirminhaltes an einen solchen angeschlossenen Plotter, entweder im adressierten oder unadressierten Modus. Weil diese Plotter langsam in die Jahre kommen und kein "Nachwuchs" am Horizont sichtbar ist, gibt es die Möglichkeit, mit einem entsprechenden Konverter (GPIB->RS232 oder GPIB->USB) und passender Software den Plotter per PC zu emulieren und so die Ausgabe des Meßgerätes direkt in eine Datei zu schreiben. Mir ist nach wie vor nicht klar, was Sven gerne möchte, und so wichtig scheint es ihm damit auch nicht zu sein, denn sonst hätte er sein Anliegen inzwischen sicher präzisiert. Ich vermute mal, daß er aus dem analog aufgenommenen Sweep des Oszilloskops gern eine Grafik im HP-GL-Format erzeugt und die dann über eine HP-IB-Schnittstelle (vielleicht tut's auch eine RS-232) ausgegeben haben möchte. Mal sehen, ob er sich nochmal meldet...
Aha klingt plausibel ;) Also nen 8 Bit paralleles Interface mit ein paar Handshake-Leitungen ist das jetzt auch schon, von daher wage ich mal zu behaupten, dass man die Firmware entsprechend umbauen kann. Aber persönlich habe ich da nicht direkt Interesse dran und hab auch keine Gerätschaft da, um das zu testen. Der ganze Kram ist ja nicht ohne Grund Open Souce ;)
Das sehe ich genauso. Mit Deiner ganz beachtlichen Vorarbeit hast Du alles Wesentliche schon bereitgestellt; wenn eine Ausgabe der Daten per virtueller COM-Schnittstelle über USB an einen PC reicht, braucht nicht einmal die Hardware verändert zu werden, sondern es bräuchten nur einige Routinen in die AVR-Firmware eingefügt zu werden, die eine Art "Header" und das Raster ausgeben sowie die Rohdaten bei der Ausgabe in eine HPGL-Liniensequenz "umformatieren". Gegebenenfalls müßte man sich über das Protokoll zwischen PC und Mikrocontroller noch Gedanken machen, oder man schließt zum Starten des Plotvorgangs noch einen separaten Taster an den Controller an (Device-initiated plot), sofern das Oszilloskop nicht bereits eine solche Taste aufweist. Wenn man sich nicht in alle Einzelheiten erst einlesen muß, kann man das in einer Woche abendlicher Arbeit gut schaffen. Für eine parallele Datenausgabe an einer "Quasi-GPIB-Schnittstelle" wäre noch etwas mehr Softwareaufwand zu treiben, und die Hardware müßte angepaßt werden - aber das soll gern jemand machen, der das hinterher auch tatsächlich braucht...
Hi, ich wollte mal Fragen ob sich hier noch was getan hat. Und ob man das Interface auch beim Hameg 205 (kein-2 kein -3) benutzten kann? Bzw. wie sieht es mit der Verwendung eines PIC anstatt eines AVR's aus? Hab da noch einen dsPic30 würde es vorteile bringen mit diesem zu arbeiten wegen der Signal Prozessor eigenschaften?
Öhhhm... gibt nicht wirklich was neues. Mein Gerät funktioniert und tut was es soll. Die Software ist inzwischen auch so weit, dass sich das Ergebnis sehen lassen kann. Ob das an deinem 205 auch geht weiß ich nicht. Es muss hinten son breiten Wannenstecker haben (weiß nicht mehr wie viele Pins das waren, 30/40?). Habe auch mal gehört dass es einige Scopes gibt, die diesen Anschluss haben, der allerdings nicht raus geführt ist, wo man dann das Scope auf machen muss und intern nen bisschen rum löten. Die Gefahren von wegen Hochspannung und Kalibrierung sollten denke ich bekannt sein. Ob sich das nun lohnt da nen PIC anzustöpseln kann ich nicht direkt sagen, weil ich nicht weiß was der alles kann. Wenn er direkt USB macht wäre das eine gute Alternative, aber was das Interface angeht ist der ATMega32 schon chronisch unterfordert. Also da sind soweit ich mich entsinnen kann in der Software Sleeps drin, um das Interface zum Scope hin zu bremsen, weil es sonst häufiger zu Bitfehlern kommt. Wenn man die Platine direkt mit in das Scope setzt und hinten nur USB rausführt und somit auch die Leitung stark verkürzt (meine war ca. 30cm lang) kann sein dass man dann noch schneller lesen kann, weiß aber nicht was das bringen soll, außer dass man evtl. das Flackern vorne verhindern könnte. Wo wir gerade beim Flackern sind. Da ist mir vor einigen Monaten nochmal was aufgefallen, was evtl. jemanden interessieren könnte (ich bin mir bei den Zahlen jetzt nicht mehr 100 %ig sicher aber es geht ums Prinzip): Das Scope zeigt die Daten im Speicher alle 5ms neu an, wenn man beide Kanäle an hat wechselt der eine Pin der anzeigt welcher Kanal gerade eingeschaltet ist immer im 5ms Takt hin und her. Das auslesen des Bildes dauert allerdings ca. 20ms. Da der Pin bidirektional zu sein scheint muss man ihn dann in dem Moment auf den entsprechenden Kanal zwingen, damit er dort bleibt. Das führt dann dazu dass es vorne flackert. Würde man ein Bild in <5ms ausgelesen bekommen könnte man sich auf das Signal des Scopes synchronisieren und müsste das Scope nicht zwingen bei einem Bild zu bleiben. Das ist mir allerdings nicht gelungen, da ich 20ms brauchte zum Auslesen. Wenn du dein Scope nicht auf blauen Dunst aufschrauben willst frag mal bei Hameg (ist das nicht inzwischen Rohde&Schwarz?) an, dass sie dir den Schaltplan schicken. Früher gabs den auch mal auf der Internetseite. Wenn du Glück hast (so wie ich damals) wirst du direkt mit nem Techniker verbunden der dir auch direkt sagen kann was das Scope intern noch an tollen Anschlüssen hat ;)
Okay, ja das Probelm ist das mein Hameg 205 noch gar nicht da ist :D war mich nur schnmal am umschaun was man noch so alles machen könnte. Der Pic hat direkt USB Interface drin. Ich will das ganze auch deswegen nur mit PIC nachbauen weil ich davon welche hab mit passendem Programmer. Für AVR habe ich nichts. Hätte höchstens noch ein Launchpad von TI aber keine Ahnung von dem Dingen.
Also funktionieren sollte das, du brauchst halt nur ne Serielle Schnittstelle (über USB oder direkt an COM Port vom PC, what ever) und nen paar freie Pins am Controller. Firmware musst du dann halt umschreiben, wobei ich mal vermute dass du da nur die Serielle Schnittstelle und die Pin-I/O Funktionen umbauen musst.
Hallo Fabian Ich gratuliere dieses wunderbare Projekt. Ich habe ein Oszilloskop CHAMEGK IM205-3, beschloss ich, ihn zu beheben. Leider hat nicht funktioniert. Ich möchte mehr Informationen über die programmierung AVR MEGA32 FUSES . welche driver zu installieren FT232RL . Ich freue mich auf antworten . Email ist smakris@hol.gr Begrüßungen SOTOS
Hallo, mir scheint es als hättest du Google benutzt um den Text ins Detusche zu übersetzen, wäre es da nicht sinniger sich auf Englisch zu unterhalten? Wie auch immer. Was den FTDI angeht: Linux und Mac bringen da schon die nötigen Treiber mit, Windows ab Vista ebenfalls. Wenn du vor Vista verwendest musst du halt die Treiber vom Hersteller nehmen: http://www.ftdichip.com/Drivers/VCP.htm Die Fuses sind im Anhang.
Hi FABIAN Excuse me for my German! Thank you for pat answer. I install the drivers for FT232 successfully. Still I am confused with AT MEGA 32 fuses, I use to programming the device PONY PROG . http://www.lancos.com When I try to open port I receive the message: <<The interface not responding >> . and the two LEDS remain off . I don’t now if I do something wrong or something else happed . SOTOS
Do you have successful used PonyProg before? If not: Do you have a real parallel port or is it a USB or PCI emulated one? Those does not work with PonyProg as far as I know.
Hi FABIAN I hope I'm not putting you to too much trouble . I have use PONY PROG many tines with no problem, I use a real COM port. I check many times the AT MEGA 32 fuse settings and seems like ok , the PCB for shorts ,broken line or other mistake ( only the LED D3 has reverse polarity in schematic ). After many unsuccessful attempts (when I push the button open I receive the message << This interface not responding >> ) , suddenly the interface connected to oscilloscope and working very well . Unfortunately when I try again to connect the interface the same problem . Any ideas what going wrong ? . Any suggestions for port settings ? . Now I have the default port settings: Bit per second :9600 , Data bits :8 , Parity :N , Stop bits :1 , Flow control :None .
You used my layout? Are you aware that you need to connect the board with the scope and turn on the scope? Otherwise the atmega won't have power. There are two power supplies, one from USB and the other one from the scope. They are used to create a galvanic isolation between the scope and the PC. Maybe thats your problem? Edit: Otherwise try to program the atmega with a different pcb, and plug it in my board after that.
Hi FABIAN I make some minor changes to original PCB due to foot print of capacitors , I don’t think this is the problem . What is the maximum length of cables between oscilloscope and interface . This is a pictures from PCB and a screen shoot that I stored . I try with a different PC .
I use a cable of about 1m. Works just fine. Are you still unable to program the atmega? The last picture looks like a screenshot of my PC program showing the test signal of the scope.
Was benutzt du hier für eine seltsame Oberfläche, die kenne ich garnicht. Beitrag "Re: Hameg 205-3 PC Interface"
Das ist Eclipse unter Linux mit AVR Plugin. Funktioniert mit avrdude und läuft unter Linux einwandfrei.
Hi FABIAN Unfortunately I have been unable to operate the circuit, (exept one time ). When I press the button to open the port always returns the message << This interface is not responding! >> I try with another PC without success. I think the problem is to FT232, or to the fuse setings off AT MEGA32 . Anyway if the circuit works that was very useful for me . I am looking forward for any improvment to that project . A similar project is here : http://www.mario001.de/elektronik/hameg/hameg1.htm http://www.mario001.de/elektronik/hameg/hameg2.htm S MAKRIS smakris@hol.gr
Hallo! Leider muus ich den Makris recht geben, ich habe das Interface nachgebaut und es funktioniert nicht. Hats jemand hier im Forum noch das Teil nachgebaut und es funktioniert hat? FTDI wird vom Rechner erkannt und es kommen Signale vom Rechner zum Atmel an. Die Fusebits habe ich so eingestellt, wie oben beschrieben, nur wurde danach der ATMEL nicht mal von dem Programmierinterface erkannt. Ich habe dann noch CKOPT zugeschaltet und es wird wieder wenigstens vom Progger gelesen. Was mache ich falsch? Vielen Dank! Gruß An
> Leider muus ich den Makris recht geben, ich habe das Interface > nachgebaut und es funktioniert nicht. > Was mache ich falsch? Du schiebst die Schuld erst mal auf die Anderen, bevor Du Deine eigenen Fehler suchst. Und mit dieser Fehlerbeschreibung kann niemand etwas anfangen. Die settings stehen doch oben mehrmals.
Hi, ich gebe dem Peter da erstmal Recht. Glaube du solltest erstmal prüfen, ob der ATMega auf die Signale, die vom PC kommen reagiert, dafür gibts ja den Befehl 0x30. Und bitte sicherstellen, dass ihr die Version 0.2 benutzt, die es hier gibt: Beitrag "Re: Hameg 205-3 PC Interface" Ansonsten würde ich sagen: Du musst ja nen Oszi haben, nutze es ;) PS: Ich habe vor einiger Zeit noch einen kleinen Fehler in der PC Software gefunden, der für Verwirrung sorgen kann: Die Anzahl der horizontalen Linien ist falsch und somit auch die Skalierung! Werde das bei Gelegenheit mal fixen. Ich vermute mal es reicht in der RenderArea.cpp die Konstante LINE_NUMBER_HOR von 11 auf 9 zu setzen. Aber das habe ich noch nicht verifiziert.
Hi Leute, ich brauche gerade mal ne Frequenzmessung und da mein Multimeter das nicht unterstützte hab ich mir schnell ne Software für das Scopeinterface geschrieben. Ihr seht in dem Fenster oben einen Korrekturfaktor den man angeben muss. Der ist leider recht hoch, wie ich inzwischen mit einem Multimeter nachmessen konnte. Bei mir liegt er für 20us/div bei 0.886 und er ist abhängig von der ausgewählten zeit pro div. Also müsstet ihr euch für euer Scope da ne kleine Tabelle machen, evtl. kann man das auch noch mit ner Instanz von QSettings von der App abspeichern lassen, hab ich haber gerade kein Nerv zu. Was auch noch interessant wäre, ist ne Spannungsmessung/Effektivwertmessung, die man da mit einbauen könnte -> Die bereits ermittelten Perioden helfen hier sicherlich das genauer zu machen! PS: Der Code ist dreckig ;)
Moin Fabian, bist du an diesem Projekt noch halbwegs aktiv dran, oder hast zumindest noch Lust dazu? Da ich mir vor kurzem eine Hameg Oszi gegönnt habe möchte ich das Interface gerne nachbauen. Vielleicht entstehen ja ein paar Verbesserungen dabei. ;) Würde mich freuen, von dir zu hören. Ich schau mir derweil mal deine Unterlagen an... :)
Hi, bin leider nicht mehr so wirklich dabei. Nutze es nicht mehr, da ich inzwischen ein vollwertiges Digital-Oszi habe ;) Aber wenn du Verbesserungen hast werden wir sicher einen Weg finden die an den Mann zu bringen. Wenn du Fragen hast, immer raus damit :)
Vielen Dank für die Software Fabian! Hier nochmals meine Version des Interfaces auf Lochraster. Anfangs wollte ich, da ich am PC noch COM-Anschlüsse frei habe, die Verbindung zwischen µC und PC per RS232 zu realisieren. Da es dabei aber zu Problemen wegen der baut von 1000000 gekommen ist habe ich stattdessen einen 2€ China TTL-USB Stick geopfert und die Platine verbaut. Das Ganze mit etwas Heißkleber in ein Lehrgehäuse von Reichelt geklebt und ab damit ans Oszi… Grüße Gabriel
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.