MetaFunk/Projekte/VNArduino/Stolpersteine: Unterschied zwischen den Versionen
OE1WKL (Diskussion | Beiträge) (Version 1 dieses Kapitels) |
OE1WKL (Diskussion | Beiträge) K (Fehler korrigiert: Elko an Reset für Mac OSX) |
||
(5 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
== Diverse Info == | == Diverse Info == | ||
* ähnliches Projekt: http://www.hamstack.com/hs_projects/k6bez_antenna_analyzer.pdf | |||
* und Video dazu: http://hackaday.com/2015/08/06/40-antenna-analyzer-with-arduino-and-ad9850/ | |||
* Videos zum [https://www.youtube.com/playlist?annotation_id=annotation_992847&feature=iv&list=PL2862BF3631A5C1AA&src_vid=b9FC9fAlfQE Löten von SMD-Bauteilen beim EEVblog] | |||
* Wer mit dem [[SMD_Reflow_Oven]] im Lab löten möchte, findet unten auf der Seite genaue Erklärvideos von den [http://wp.realraum.at Grazer Realraum-Kollegen] die den gleichen Ofen haben. | |||
== Info zum LCDisplay == | |||
[[Datei:VNArduino_display.jpeg|right|200px]] | |||
Die Verbindung von I2C-Treiber und LCD-Modul ist so zu machen [[:Datei:VNArduino_display.jpeg|wie am Foto]] - natürlich kann man das auch auf der anderen Seite des LCDs machen, die 4 Anschlüsse des I2C-Buses müssen aber immer nach aussen zeigen. | |||
Aufpassen beim Anschluss des I2C-Buses (Ground, V<sub>CC</sub>, SCL, SDA) - falsch rum geht's nicht! ;-) (Falsch rum ist ganz böse: meistens stirbt dann das Display, weiß oe1wkl aus eigener Erfahrung zu berichten.) | |||
Im Sketch muss die richtige I2C-Adresse des Displays eingestellt werden - da kann es je nach Lieferant Unterschiede geben was hardwaremäßig voreingestellt ist. Unsere Displays sollten auf 63 sein. Mit dem Sketch ''I2C_Scanner'' kann man festestellen, wo das Display wirklich ist. Dazu müsst ihr das Programm "Arduino" öffnen. Den ''Serial Monitor'' unter Tools öffnen und auf 115.200 Baud einstellen. | |||
Das Programm am Arduino compilieren/uploaden und im ''Serial Monitor'' solltet ihr dann so eine Ausgabe erhalten: | |||
I2C scanner. Scanning ... | |||
Found address: 63 (0x3F) | |||
Done. | |||
Found 1 device(s). | |||
In Zeile 152 (ungefähr!) des ArduinoSD Programms müsste man dann die entsprechende Adresse ändern. | |||
LiquidCrystal_I2C lcd(0x3F..... | |||
Eventuell muss man das Poti auf der Treiberplatine so einstellen, dass man auch wirklich was sieht (Kontrast). | Eventuell muss man das Poti auf der Treiberplatine so einstellen, dass man auch wirklich was sieht (Kontrast). | ||
== Info zum Encoder == | == Info zum Encoder == | ||
Die 2 Anschlüsse sind der Taster, die 3 der Encoder. Üblicherweise ist der mittlere Encoderanschluss COMMON, dh. Ground in unserem Fall, die äußeren A und B. Wenn man die vertauscht, ändert sich nur die Drehrichtung , das kann man dann leicht umstecken. | Die 2 Anschlüsse sind der Taster, die 3 der Encoder. Üblicherweise ist der mittlere Encoderanschluss COMMON, dh. Ground in unserem Fall, die äußeren A und B. Wenn man die vertauscht, ändert sich nur die Drehrichtung , das kann man dann leicht umstecken. | ||
Einer der Taster-Anschlüsse ist auch auf Ground zu legen. | Einer der Taster-Anschlüsse ist auch auf Ground zu legen. | ||
== Info zum Bluetooth Modul == | == Info zum Bluetooth-Modul == | ||
(Siehe auch die [https://www.dropbox.com/s/ev4lbwww4izzfpg/ArduinoVNA_Bauteile.pdf?dl=0 aktuelle Version der Bauteileliste]!) | |||
[ | |||
Falls man einen Pegelwandler braucht: eine Schaltung mit MOS-FETs gibt es hier: http://www.hobbytronics.co.uk/mosfet-voltage-level-converter | |||
== Info zum Compilieren des Arduino Sketches == | == Info zum Compilieren des Arduino Sketches == | ||
Damit die Arduino Software den Arduino erkennen kann, muss man einen Treiber installieren (die chinesischen Arduinos haben keinen FTDI Chip | Damit die Arduino-Software den Arduino erkennen kann, muss man einen Treiber installieren (die chinesischen Arduinos haben oft keinen FTDI-Chip sondern einen anderen). Treiber kann man hier runterladen (Seite ist chinesisch, also evtl. [https://translate.google.com/translate?sl=auto&tl=en&js=y&prev=_t&hl=de&ie=UTF-8&u=http%3A%2F%2Fwch.cn%2Fdownload%2FCH341SER_ZIP.html&edit-text= von Google übersetzen lassen]): http://wch.cn/download/CH341SER_ZIP.html. Dort gibts auch Treiber für Linux und OS X. | ||
Dort gibts auch Treiber für Linux und | |||
Man muss die SDFAT Library einbinden - die aktuellste ist wohl hier: https://github.com/victorpv/SdFat oder alternativ (nicht ganz so aktuell) https://github.com/greiman/SdFat. | |||
Inzwischen wurden von OE1KFR und OE1WKL | Inzwischen wurden von OE1KFR und OE1WKL einige Änderungen und Verbesserungen am Code vorgenommen. Den '''aktuellen Code''' gibt es hier: https://github.com/rainerfritz/arduinovna | ||
== Inbetriebnahme == | == Inbetriebnahme == | ||
Nach Power On sollte eine Welcome Message am Display sein - dann sofort denn Encoder drücken, dann kommt man ins Menü! | Nach Power On sollte eine Welcome Message am Display sein - dann sofort denn Encoder drücken, dann kommt man ins Menü! | ||
== Desktop Anwendung == | == Desktop Anwendung == | ||
Achtung | Das JAR File für die Desktopanwendung gibts hier: http://download.dl2sba.com/vnaj/3.1.7/vnaJ.3.1.7.jar bzw. auf der übergeordneten | ||
Reset! Workaround: Zwischen Reset-Pin und | [http://vnaj.dl2sba.com/index.php?option=com_content&view=article&id=11&Itemid=118 vnaj.dl2sba.com Download-Seite]. | ||
'''Achtung unter OS X''' (und möglicherweise auch unter Linux) gehts nicht, aufgrund eines vertrackten Problems, wie die betreffenden Betriebssysteme mit dem DTR Signal an der seriellen Schnittstelle umgehen. Unter OS X wird - als Handshake? _ immer wieder DTR auf LOW gesetzt, das bewirkt beim Arduino aber ein komplettes Reset! Workaround: Zwischen Reset-Pin und Ground (nicht wie zuerst geschrieben, V<sub>CC</sub>) einen Elko mit 5 - 10 μF dazutun (am besten eine Stiftbuchse auf die Hautplatine löten, und den Elko einstecken). Damit bleibt RST lange genug auf HIGH. Zum Programmieren des Arduino muss der Elko allerdings weg, denn das geht eben über den Reset durch DTR! – ([http://arduino.stackexchange.com/questions/439/why-does-starting-the-serial-monitor-restart-the-sketch siehe auch]). Man kann die Stiftleiste auf der Platinenrückseite relativ leicht an die Lötstellen der Arduino-Steckbuchsenliste dran löten - Pin 3 ist Reset, und Pin 4 ist Ground (Pin 1 ist dort, wo F4GOH daneben steht). | |||
Mit dem Desktop | Mit dem Desktop-Programm muss man eine eigene Kalibrierung vornehmen, wie im Originaldokument von F4GOH beschrieben! |
Aktuelle Version vom 6. November 2015, 19:12 Uhr
Diverse Info
- ähnliches Projekt: http://www.hamstack.com/hs_projects/k6bez_antenna_analyzer.pdf
- und Video dazu: http://hackaday.com/2015/08/06/40-antenna-analyzer-with-arduino-and-ad9850/
- Videos zum Löten von SMD-Bauteilen beim EEVblog
- Wer mit dem SMD_Reflow_Oven im Lab löten möchte, findet unten auf der Seite genaue Erklärvideos von den Grazer Realraum-Kollegen die den gleichen Ofen haben.
Info zum LCDisplay
Die Verbindung von I2C-Treiber und LCD-Modul ist so zu machen wie am Foto - natürlich kann man das auch auf der anderen Seite des LCDs machen, die 4 Anschlüsse des I2C-Buses müssen aber immer nach aussen zeigen.
Aufpassen beim Anschluss des I2C-Buses (Ground, VCC, SCL, SDA) - falsch rum geht's nicht! ;-) (Falsch rum ist ganz böse: meistens stirbt dann das Display, weiß oe1wkl aus eigener Erfahrung zu berichten.)
Im Sketch muss die richtige I2C-Adresse des Displays eingestellt werden - da kann es je nach Lieferant Unterschiede geben was hardwaremäßig voreingestellt ist. Unsere Displays sollten auf 63 sein. Mit dem Sketch I2C_Scanner kann man festestellen, wo das Display wirklich ist. Dazu müsst ihr das Programm "Arduino" öffnen. Den Serial Monitor unter Tools öffnen und auf 115.200 Baud einstellen.
Das Programm am Arduino compilieren/uploaden und im Serial Monitor solltet ihr dann so eine Ausgabe erhalten:
I2C scanner. Scanning ... Found address: 63 (0x3F) Done. Found 1 device(s).
In Zeile 152 (ungefähr!) des ArduinoSD Programms müsste man dann die entsprechende Adresse ändern.
LiquidCrystal_I2C lcd(0x3F.....
Eventuell muss man das Poti auf der Treiberplatine so einstellen, dass man auch wirklich was sieht (Kontrast).
Info zum Encoder
Die 2 Anschlüsse sind der Taster, die 3 der Encoder. Üblicherweise ist der mittlere Encoderanschluss COMMON, dh. Ground in unserem Fall, die äußeren A und B. Wenn man die vertauscht, ändert sich nur die Drehrichtung , das kann man dann leicht umstecken.
Einer der Taster-Anschlüsse ist auch auf Ground zu legen.
Info zum Bluetooth-Modul
(Siehe auch die aktuelle Version der Bauteileliste!)
Falls man einen Pegelwandler braucht: eine Schaltung mit MOS-FETs gibt es hier: http://www.hobbytronics.co.uk/mosfet-voltage-level-converter
Info zum Compilieren des Arduino Sketches
Damit die Arduino-Software den Arduino erkennen kann, muss man einen Treiber installieren (die chinesischen Arduinos haben oft keinen FTDI-Chip sondern einen anderen). Treiber kann man hier runterladen (Seite ist chinesisch, also evtl. von Google übersetzen lassen): http://wch.cn/download/CH341SER_ZIP.html. Dort gibts auch Treiber für Linux und OS X.
Man muss die SDFAT Library einbinden - die aktuellste ist wohl hier: https://github.com/victorpv/SdFat oder alternativ (nicht ganz so aktuell) https://github.com/greiman/SdFat.
Inzwischen wurden von OE1KFR und OE1WKL einige Änderungen und Verbesserungen am Code vorgenommen. Den aktuellen Code gibt es hier: https://github.com/rainerfritz/arduinovna
Inbetriebnahme
Nach Power On sollte eine Welcome Message am Display sein - dann sofort denn Encoder drücken, dann kommt man ins Menü!
Desktop Anwendung
Das JAR File für die Desktopanwendung gibts hier: http://download.dl2sba.com/vnaj/3.1.7/vnaJ.3.1.7.jar bzw. auf der übergeordneten vnaj.dl2sba.com Download-Seite.
Achtung unter OS X (und möglicherweise auch unter Linux) gehts nicht, aufgrund eines vertrackten Problems, wie die betreffenden Betriebssysteme mit dem DTR Signal an der seriellen Schnittstelle umgehen. Unter OS X wird - als Handshake? _ immer wieder DTR auf LOW gesetzt, das bewirkt beim Arduino aber ein komplettes Reset! Workaround: Zwischen Reset-Pin und Ground (nicht wie zuerst geschrieben, VCC) einen Elko mit 5 - 10 μF dazutun (am besten eine Stiftbuchse auf die Hautplatine löten, und den Elko einstecken). Damit bleibt RST lange genug auf HIGH. Zum Programmieren des Arduino muss der Elko allerdings weg, denn das geht eben über den Reset durch DTR! – (siehe auch). Man kann die Stiftleiste auf der Platinenrückseite relativ leicht an die Lötstellen der Arduino-Steckbuchsenliste dran löten - Pin 3 ist Reset, und Pin 4 ist Ground (Pin 1 ist dort, wo F4GOH daneben steht).
Mit dem Desktop-Programm muss man eine eigene Kalibrierung vornehmen, wie im Originaldokument von F4GOH beschrieben!