Häufig gestellte Fragen zur Arduino-Entwicklungsumgebung

Hier finden Sie Antworten für die praktische Anwendung aller von uns ehemals angebotenen Arduino-Komponenten

Weiterführende Informationen finden Sie auch in der FAQ unter http://arduino.cc/en/Main/FAQ sowie im Forum unter http://arduino.cc/forum/

Zum Thema ″Arduino″ kontaktieren Sie uns bitte ausschließlich unter arduino@antrax.de

 

FAQ


Welche Stromversorgung wird für die Mobilfunk/Iridium-Shields benötigt? 

  • Mobilfunk- und Satellitenfunkmodule benötigen, speziell bei schlechter/ungünstiger Funkanbindung hohe Stromspitzen in der Versorgungsspannung
  • ACHTUNG: es muß ein externes Netzteil mit min. 9V/1A angeschlossen werden und zwar über den Rundsteckverbinder auf dem Arduino-Mainboard
  • die ausschließliche Stromversorgung über die USB-Verbindung zum PC ist auf keinen Fall ausreichend!
  • ebenso ist die Stromversorgung aus 9V-Blockzellen oder ähnlich schwächlichen Batterien/Akkus, wie z.B. Knopfzellen nicht ausreichend!

Welche PINs belegt das GSM/GPRS/GPS-Shield?

  • das GSM/GPRS/GPS-Shield belegt folgende PINS:
    – in Verwendung mit dem Arduino Uno: D0 – D7 und D10 – D13
    – in Verwendung mit dem Arduino Mega2560: D0 – D7 und D50 – D53

Wie sollte die Mobilfunkantenne plaziert werden?

  • Antennen von Mobilfunksystemen sind starke HF-Strahler. Arduino-Boards und die dazugehörigen Shield sind nicht für den Betrieb in unmittelbarer Nähe von HF-Strahlern konzipiert
  • wir empfehlen deshalb die Verwendung von externen z.B. Magnetfussantennen mit SMA-Steckverbinder und deren Plazierung in ca. 20cm Abstand zum Arduino-Board.

Mein Shield ist defekt … ich messe mit meinem Multimeter an der Antennenbuchse 0 Ohm gegen Masse, also einen Kurzschluss!

  • nein, das GSM/GPRS/GPS-Shield ist nicht defekt
  • der Antennenausgang sollte eine Impedanz von 50 Ohm haben
  • der Unterschied zwischen Widerstand und Impedanz besteht darin, dass die Impedanz frequenzabhängig ist. Die Messung mit einem Ohmmeter (dort wird mit Gleichstrom gemessen) wird nicht 50 Ohm ergeben! Ein Ohmmeter ist für diese Messung ungeeignet! Mit einem Network-Analyser und bei einer Frequenz von ca. 800MHz und 1900MHz wird dagegen die erwartete 50-Ohm-Impedanz am Antennenausgang angezeigt
  • Merke:
    Widerstand = Impedanz bei 0Hz

Wer entwickelt mir kostenlos die Hardware / Software für mein Hobby-Arduino-Projekt?

  • Sie

Wer entwickelt mir die Software für mein professionelles Projekt auf Arduino-Basis (Einzelgerät, Miniserie, Machbarkeitsanalyse etc.)?

  • bitte kontaktieren Sie uns, wir machen Ihnen gern ein entsprechendes Angebot. Wir benötigen möglichst genaue Anforderungen an die Baugruppe und Informationen zu den Rahmenbedingungen.

Kann ich „fremde“ Arduino-Libraries für die Shields verwenden?

  • nein, jedes Shield benötigt „seine eigene“ Library … irgendeine ähnliche Library für ein ähnliches Produkt eines anderen Herstellers funktioniert vermutlich nicht

Warum senden die Arduino-Libraries die Befehle für Mobilfunk- und Iridium-Shields auch zur USB-PC-Schnittstelle? Das muss doch ein Fehler sein?

  • nein, das ist kein Fehler! Das liegt am Arduino-Design! Jede Ausgabe des Controllers über seine serielle Schnittstelle wird in Richtung der Shields UND an den USB-Chip gesendet. Das ist auf dem Arduino-Board so fest verdrahtet (Arduino-Grundfunktion, siehe Arduino-Beschreibung).
    Bei Beschwerden bitte → http://arduino.cc/en/Main/ContactUs

Woher bekomme ich Informationen über das verwendete Mobilfunk- und GPS-Modul?

Woher bekomme ich Informationen zur Programmierung von Arduino-Boards?

  • es gibt zahlreiche Foren zum Thema Arduino

Verschenkt antrax Datentechnik GmbH die Fertigungsunterlagen, damit jederman das GSM/GPRS/GPS-Shield nachbauen und verkaufen kann?

  • nein!
  • der Schaltplan ist allerdings verfügbar

Ist das Umbaukit für das Arduino Mega2560 (Art.-Nr. ar3501) bereits zusammengelötet?

  • nein, die Adern müssen noch an die Steckverbinder angelötet werden
  • die Umbauanleitung finden Sie hier

Mein GSM/GPRS/GPS-Shield funktioniert nicht, es fehlt das IC52 (das ist bestimmt heruntergefallen)?

  • das IC52 ist ein „SIM-Chip“, der nur optional und nur in Absprache mit dem Nutzer bestückt wird. Das Standard-Shield funktioniert auch, wenn dieser Chip nicht bestückt ist … ganz sicher! Aber bitte daran denken: Zum Betrieb des Boards muss eine SIM-Karte gesteckt sein!

Gibt es die richtige Art der Ansteuerung (über AT-Sequenzen) eines Mobilfunkmoduls?

  • Viele Wege führen nach Rom:
    Fast alle komplexeren Funktionen bzw. Abläufe in einem Mobilfunkmodul können auf unterschiedlichen Wegen und meist auch mit unterschiedlichen AT-Befehlen realisiert werden. Es gibt, bis auf wenige Ausnahmen, nicht die ultimativ richtige Softwarefunktion. Von daher sollte es nicht verwundern, dass Programme bzw. Programmierbeispiele mit anderen AT-Kommandos und anderen Befehlsfolgen genau so gut funktionieren, wie die originalen Beispielprogramme.
  • GSM-easy! – Shield:
    Bei der Programmierung der Library wurde besonders darauf geachtet, EINFACHEN, gut nachvollziehbaren Beispielcode zu programmieren. Rekursive Funktionsaufrufe, prozedurale Parameter oder verschachtelte, undurchschaubare Objekte oder Klassen werden Sie in der GSM-easy! – Library nicht finden.Die GSM-easy! – Library ist so aufgebaut, dass nicht benötigte Funktionen ganz einfach komplett entfernt werden können. Es gibt, bis auf zwei Ausnahmen (das sind die Funktionen „WaitOfReaction“ und „WaitOfDownload“) keine Sprünge innerhalb der Library-Funktionen. Wenn z.B. in einem Arduino-Programm nur eine SMS versendet werden soll, werden nur drei Funktionen aus der Library benötigt:
    – GSM.begin();
    – GSM.initialize(„1357“);
    – GSM.sendSMS(„+491701234567″,“hello world …“);
    Alle anderen Funktionen der Library (mit Ausnahme der beiden „WaitOf…“-Funktionen) können gelöscht werden. Damit geht kein wertvoller Speicherplatz durch überflüssige Library-Funktionen verloren.

Immer Ärger mit der seriellen Schnittstelle!?

  • Ein dauerhaftes Ärgernis beim Arduino-Board (Duemillanove, UNO etc.) ist die Tatsache, dass nur eine serielle Schnittstelle vorhanden ist. Leider wurden an diese eine serielle Schnittstelle von den Arduino-Entwicklern mehrere ‚Teilnehmer‘ gehängt. Das hat zur Folge, dass die Protokollierung/Debug-Ausgaben von AT-Sequenzen zum Mobilfunk-Shield und dessen Antworten darauf oft (systembedingt) nicht funktionieren kann.
    Beispiel:
    Es wird ein AT+CREG? zum Mobilfunk-Shield gesendet, welches z.B. mit
    +CREG: 0,1
    OK
    antwortet und damit signalisiert, dass es beim Homeprovider eingebucht ist. So weit, so gut!Wenn diese Information plus eine Debug-Meldung (im Klartext) für den User auch über Arduinos „Serial-Monitor“ ausgegeben wird, z.B. „GSM eingebucht“ o.ä. kommt es am Mobilfunkmodul zu einer Fehlermeldung („+CME ERROR: 100“). Das liegt daran, dass der String „GSM eingebucht“ nicht nur als Klartext für den User zum Serial Monitor gesendet wird, sondern, ungewollt aber nicht verhinderbar, parallel auch als Befehlssequenz zum Mobilfunkmodul. Und ein AT-Befehl „GSM eingebucht“ ist dem Modul natürlich unbekannt und deswegen reagiert es darauf mit „+CME ERROR: 100“ (= unbekannter Befehl).
    D.h., so gut wie alle Ausgaben von Klartexten im Serial Monitor führen am Mobilfunk-Shield zu Fehlermeldungen, weil das Mobilfunk-Modul nur „ungültige Befehle“ erkennt.
  • Ein weiteres, ebenfalls im Zusammenhang mit der seriellen Schnittstelle zu sehendes Ärgernis besteht darin, dass auch während eines Uploads von Software vom PC auf das Arduino-Board ein aufgestecktes Mobilfunk-Shield über die parallelgeschaltete Schnittstelle immer auch „mit angesprochen“ wird. Da ein Binärcode immer wie „Datensalat“ aussieht, kann ein Mobilfunkmodul, das nur AT-Befehlssequenzen kennt und erwartet, damit nicht viel anfangen und antwortet dem PC pausenlos mit Fehlermeldungen (s.o.) … was wiederum zur Folge hat, dass der Software-Upload abgebrochen wird (weil der PC da vermeintlich einen Fehler entdeckt hat).
    Dieser Fehler wird bei den antrax-Mobilfunk-Shields automatisch verhindert, da das Mobilfunk-Shield bzw. die serielle Schnittstelle darauf, während des Upload-Vorgangs deaktiviert wird. Das Shield wird nach einem Reset (= Beginn des Software-Uploads) automatisch deaktiviert und kann über die Signale
    – am GSM-easy! – Shield: GSM_ON auf Output 6 oder 10 (siehe Schaltplan)
    – am GSM/GPRS/GPS-Shield : SHIELD_POWER_ON auf Output 7 (siehe Schaltplan)
    wieder aktiviert werden.
  • Das Protokollieren der Kommunikation zwischen Arduino-Controller und Mobilfunkmodul über den „Serial Monitor“ ist nur bedingt und sehr unübersichtlich möglich. Der Serial Monitor ermöglicht nur die Anzeige der Antworten des Mobilfunkmodules, nicht die von der Arduino-Software zum Mobilfunkmodul gesendeten AT-Sequenzen selbst. Außerdem werden keine Steuerzeichen dargestellt.
    Die antrax-Mobilfunk-Shields besitzen einen optionalen 3-Pin-Stecker, über den die Sende-/und Empfangssignale der seriellen Schnittstelle abgegriffen und „richtig“ mitprotokolliert werden können
    – am GSM-easy! – Shield: X24
    Pin 1 = Richtung Arduino —> Mobilfunkmodul, Pin 2 = Richtung Mobilfunkmodul —> Arduino, Pin 3 = GND
    – am GSM/GPRS/GPS-Shield : X53
    Pin 1 = Richtung Arduino —> Mobilfunkmodul, Pin 2 = Richtung Mobilfunkmodul —> Arduino, Pin 3 = GNDÜber diese Stiftleisten können „Serial Line Sniffer“ (Hardware) angeschlossen werden, die „richtige“ Protokollierung ermöglicht (wie z.B. „Docklight“ oder ähnliche PC-Programme). ACHTUNG: Diese Lösung kann nicht alleine mit Arduino-Komponenten realisiert werden.Weiterhin können über diese Stiftleisten Firmware-Updates für die Mobilfunkmodule eingespielt werden.
  • to be continued …