Forum: Mikrocontroller und Digitale Elektronik GPRS GSM Modul in embedded System


von GPRS (Gast)


Lesenswert?

Vorweg ich bin kein Fachmann und mein erstes Ziel ist es ein paar 
grundsätzliche Fragen zu klären.

Ich würde gerne mit einem X-beliebigen Gerät über das Internet 
kommunizieren. Dieses Gerät soll über einen X-beliebigen uC verfügen. 
Über ein Smartphone, Laptop, IPad sollen jetzt bestimmte Daten des 
Gerätes über das Internet ausgegeben werden können bzw. auch gesteuert 
werden können.

Prinzipiell stell ich mir das so vor:
Der uc ist über eine serielle Schnittstelle mit einem GSM/GPRS Modul 
verbunden und konfiguriert dieses über die 4-Leitungen (oder 
2-Leitungen). Das Gerät kann sich dann über das GMS Modul mit dem 
Internet verbinden. Das GSM Modul arbeitet dann im 900MHZ oder 1800MHz 
Bereich. Wenn ich mich jetzt mit einem IPad ebenfalls übers Internet 
verbinde kann ich mich mit dem ursprünglichen Gerät koppeln!

Haben diese GSM-Module meist eine integrierte Antenne.
Gibt es Empfehlungen für beispielsweise Atmels oder Pics?

Gibt es EvuBoards mit uc inklusive GSM Modulen, die zum Einstieg 
empfohlen werden?

Als beispiel habe ich das folgende Arduino Board gefunden:
http://arduino.cc/de/Main/ArduinoGSMShield -> hier ist der uc noch nicht 
on board.

Das GMS Modul müsste dann dieses hier sein:
http://arduino.cc/de/uploads/Main/Quectel_M10_datasheet.pdf

Wie gesagt mir geht es vorerst um das grundsätzliche Verständnis und ich 
hoffe ich habe die Übertragung schon mal ganz grob richtig skizziert?

von Test (Gast)


Lesenswert?

Das wird so nichts... über GPRS/UMTS Internet beduetet meistens (außer 
ultrateure busines tarife), dass du in einem "Carrier-Grade" NAT hängst 
und du nicht von außen erreichbar bist!
Abhilfe schafft da nur eine Art "Proxy" (zB VServer irgendwo) mit dem 
sich dein GPRS/UMTS Modul verbindet. Dadrauf kannst du dann 
mitirgendeinem Endgerät zugreifen..

von R_ E. (daren)


Lesenswert?

Klar funktioniert das prinzipiell so. Du brauchst halt noch eine 
entsprechende SIM-Karte um ein Netz nutzen zu können und Empfang braucht 
Dein Modul dann natürlich auch. Der µC muss das Protokoll für die 
Datenübertragung implementieren und 'ne Energieversorgung brauchst Du 
auch ;)

Hier gibt's z.B. fertige Module, die sowas können mit ziemlich guter 
Doku (schau mal im Development-Bereich):

http://www.libelium.com/
http://www.libelium.com/development/waspmote/documentation/gsmgprs-networking-guide/

Das Abspruchsvolle an der Sache ist die Implementierung der 
Schnittstelle mit dem Nutzer, damit Du irgendwas auslesen und steuern 
kannst.

von Guido L. (guidol1970)


Lesenswert?

Warum steuern uebers Internet?
Warum nicht bei GSM einfach SMS nutzen, bei einer Karte mit SMS-Flat?
Oder gibt es zu viele Daten zu uebertragen?

von Oliver R. (orb)


Lesenswert?

Guido Lehwalder schrieb:
> Warum nicht bei GSM einfach SMS nutzen, bei einer Karte mit SMS-Flat?

Weil jede SMS-Flat teuerer ist als eine kleine Prepaid-Datenflat.

von GPRS (Gast)


Lesenswert?

Schon mal vielen Dank für Alle Antworten! Es werden jetzt vielleicht 
noch 1,2 dumme Fragen folgen :)

> Du brauchst halt noch eine
> entsprechende SIM-Karte um ein Netz nutzen zu können und Empfang braucht
> Dein Modul dann natürlich auch.

D.h. ich brauche für jedes Gerät mit dem ich über beispielsweise ein 
IPAD kommunizieren möchte eine SIM Karte (also genauso wie eine 
kostenpflichtige SIM-Karte in einem Handy von einem X-beliebigen 
Anbieter). Ich kann mich logicherweise nicht ohne die SIM Karte über 
GPRS mit dem Internet verbinden. Glaube hier hakst bei mir noch mit 
Grundlagen wie Unterschiede Mobilfunknetz <-> Internet <-> GPRS

Der µC muss das Protokoll für die
> Datenübertragung implementieren und 'ne Energieversorgung brauchst Du
> auch ;)

Energieversorgung sollte kein Problem sein. Welche Protokolle wäre das 
in der Regel? Werden diese von dem Hersteller der GSM/GPRS Module per 
Software mitgeliefert oder befinden sich schon on board?

> Hier gibt's z.B. fertige Module, die sowas können mit ziemlich guter
> Doku (schau mal im Development-Bereich):
>
> http://www.libelium.com/
> http://www.libelium.com/development/waspmote/docum...

Schon mal vielen Dank für den Link. Sowas hilft schon mal weiter

> Das Abspruchsvolle an der Sache ist die Implementierung der
> Schnittstelle mit dem Nutzer, damit Du irgendwas auslesen und steuern
> kannst.

Wie sähe die Implementierung so einer Schnittstelle im Groben aus?

Vielleicht nochmal ganz grob ein Beispiel das mir im Kopf rumschwebt:
Man hat diverse Geräte die mit einem uc gesteuert werden. Diese Geräte 
befinden sich an vielen verschiedenen Orten. Jedes dieser Geräte hat 
irgeneinen Sensor (z.B. Temp.sensor) und ist über eine serielle 
Schnittstelle mit einem GSM/GPRS Modul verknüpft, welcher die Anbindung 
zum Internet bzw. Mobilfunknetz?? herstellt. Die Temperatur all dieser 
Geräte (die an ganz verschiedenen Orten sind) soll über eine Webseite 
oder ein Smartphone überwacht werden und wenn Gerät A beispielsweise zu 
warm wird soll dies an Gerät B an einem andern Ort beispielsweise über 
eine blinkende LED an Gerät B weitergegeben werden.

Dies vielleicht mal als Beispiel. Natürlich wäre sowas für mich viel zu 
kompliziert zu realisieren. Ich will nur verstehen ob es realisierbar 
ist und wenn das Verständnis der Hintergründe und welche Arbeitsschritte 
dafür nötig sind.

Vielen Dank

von Frank K. (fchk)


Lesenswert?

GPRS schrieb:

> D.h. ich brauche für jedes Gerät mit dem ich über beispielsweise ein
> IPAD kommunizieren möchte eine SIM Karte (also genauso wie eine
> kostenpflichtige SIM-Karte in einem Handy von einem X-beliebigen
> Anbieter). Ich kann mich logicherweise nicht ohne die SIM Karte über
> GPRS mit dem Internet verbinden. Glaube hier hakst bei mir noch mit
> Grundlagen wie Unterschiede Mobilfunknetz <-> Internet <-> GPRS

Um ein Mobilfunknetz benutzen zu können, brauchst Du eine SIM-Karte.

GPRS ist ein paketvermittelnder Dienst im Mobilfunknetz. Heißt: Du 
bezahlst nach Datenvolumen und nicht nach Zeit.

Über GPRS kannst Du eine Internet-Verbindung aufbauen. Du bekommst eine 
private IP-Adresse, die nicht im Internet geroutet werden kann, genauso 
wie dein PC in Verbindung mit einem DSL-Router. Heißt: Du kannst 
TCP-Verbindungen ins Internet aufbauen, aber ein Internet-Rechner kann 
keine TCP-Verbindung zu Dir aufbauen. Der TCP-Verbindungsaufbau muss 
immer vom mobilen Gerät geschehen.

Die üblichen Mobilfunk-Modems verwenden den AT-Befehlssatz, wie er seit 
>30 Jahren bei Festnetzmodems verwendet wird. Du baust eine 
PPP-Verbindung auf wie mit einem Festnetzmodem, wählst aber keine 
normale Telefonnummer, sondern so etwas wie *0# oder so (kann von 
Provider zu Provider unterschiedlich sein). Der Rest ist im Prinzip 
genauso wie mit einem Festnetzmodem.

Dein Mikrocontroller muss einen TCP-Stack und einen PPP-Client haben. 
Das schließt kleine Controller wie Attiny und PIC16 aus, weil die 
einfach nicht genug Speicher haben. Ein kleiner ARM oder ein PIC32MX 
wäre angemessen.

Die GSM/GPRS-Modems haben durch die Bank 32 Bit Controller sowie einen 
speziellen DSP für die Funkschnittstelle eingebaut. Es gibt auch Modems, 
in die man auch eigenen Programmcode hineinladen kann, zB als 
Phyton-Skript. Damit würde die Notwendigkeit eines extra Controllers 
entfallen.

http://www.telit.com/telit/Pulsar/en_US.Store.display.1027./gc864-quad-v2#

Dieses Modul hat auch einen eingebauten TCP-Stack, d.h. Du kannst mit 
AT-Befehlen FTP-, SMTP- und HTTP-Übertragungen durchführen, ohne selbst 
einen TCP/IP-Stack implementieren zu müssen. Für viele Anwendungen 
reicht das aus.

Denke an das Thema Verschlüsselung. Niemand möchte heutzutage im 
Internet noch ohne wirksame Verschlüsselung arbeiten. Diese Forderungen 
erzwingen also einen 32 Bit Controller, d.h. wenn Du nur AVR und AVR und 
vielleicht noch AVR kennst, dann verabschiede Dich schon mal davon.

Neben der paketvermittelnden Datenübertragung über GPRS und UMTS gibt es 
noch die leitungsvermittelnde Datenübertragung über GSM mit bis zu 14400 
bps. Das funktioniert genauso wie früher bei den Mailboxen. Du wählst 
eine Rufnummer an, es wird eine direkte Verbindung zwischen Dir und der 
Gegenstelle aufgebaut (d.h. Du brauchst hier keine Verschlüsselung, weil 
niemand mithören kann außer BND/CIA/NSA/FSB/...), und wenn die 
Verbindung steht, dann kannst Du Daten austauschen und anschließend 
wieder auflegen. Abgerechnet wird nach Verbindungszeit. Für 8 Bit 
Systeme ist das die einfachste Möglichkeit. Die Gegenstelle kann auch 
ein ISDN-Modem(*) mit V.110 oder ein Analogmodem(*) sein, und der 
Verbindungsaufbau geht in alle Richtungen (mobil-mobil, fest-mobil, 
mobil-fest, fest-fest).

(*) funktioniert nur an richtigen Analog- bzw ISDN-Anschlüssen, nicht an 
NGN-Anschlüssen, wo man nur noch Internet-Telefonie hat.

fchk

von R_ E. (daren)


Lesenswert?

@Frank: Top Antwort und super ausgeführt.


GPRS schrieb:
... Ich will nur verstehen ob es realisierbar
> ist und wenn das Verständnis der Hintergründe und welche Arbeitsschritte
> dafür nötig sind.

Ja, natürlich ist es realisierbar und auch schon als reales System 
verfügbar, deswegen ja mein Link zu libelium ;) Lies Dir dort auch mal 
die anderen Dokumente im Entwicklerbereich durch zum Waspmote an sich, 
da ist auch das komplette System erklärt, das u.a. auch mit 
verschiedenen Funkmodulen (neben GSM/GPRS) ausgestattet werden kann. 
Sowas nennt sich im übrigen "Sensornetz" (siehe bspw. Wikipedia). Bei 
libelium haben sie eben genau die Sachen Implementiert, die Frank 
beschrieben hat und dem Nutzer eine Schnittstelle zur Verfügung gestellt 
(im µC auf dem Waspmote implementiert), die es erlaubt die Dinger 
einfach per Script zu programmieren... ist alles dokumentiert. Die 
einzelnen "Sensorknoten" haben natürlich auch Sensoreingänge (wäre ja 
sonst sinnfrei :P ), die man dann entsprechend auslesen kann. Ich will 
jetzt keine Werbung machen aber ich fand die besonders interessant ;)

Gerade zum Thema Sensornetze schau mal bei der englischen Seite von 
Wikipedia, speziell hier:

http://en.wikipedia.org/wiki/List_of_wireless_sensor_nodes

Da findest Du eine Liste mit Herstellern und Projekten, die genau das 
Thema verfolgen ;)

von GPRS (Gast)


Lesenswert?

Ich wollte mich schon einmal bei euch für die ausführliche Antwort 
bedanken.
Sehr informativ, gerade für den ersten Eindruck und das Thema 
interessiert mich sehr!

Werde mich mal einlesen und eventuell nochmals melden.

Noch eine Frage zu dem Sensornetz:
Wiki:
"kommunizierenden Computern, die entweder in einem 
infrastruktur-basierten (Basisstationen) oder in einem sich selbst 
organisierenden Ad-hoc-Netz"

Kommunizierende Computer ist ja eigentlich genau das was ich machen 
will/mich interessiert. Ich bin mir unsicher über welche Entfernung.

Kann man vielleicht grob sagen:
1. Hat man mehrere uc innerhalb einer geringen Reichweite kann man die 
einfach über ein AD-HOC Netz koppeln, in dem man jeden uc mit einem 
einfachen WLAN Modul verbindet. Ein uc macht mit seinem WLAN Modul den 
AP mit dem die anderen sich connecten können. Das funktioniert dann 
natürlich nur über kleine Reichweiten (beispielsweise innerhalb eines 
Lagers)
-> einfaches WLAN-Modul statt GSM Modul

2. Wenn man mehrere uc über eine sehr große Reichweite kommunizieren 
lassen will kommt man nicht drum rum dies über eine Mobilfunkverbindung 
bzw. über eine über GPRS aufgebaute Internetverbindung zu realisieren -> 
GSM/GPRS Modul inkl. SIM Karte

???

Nochmal schönen Dank für die informativen Beiträge

von Frank K. (fchk)


Lesenswert?

GPRS schrieb:


> Kann man vielleicht grob sagen:
> 1. Hat man mehrere uc innerhalb einer geringen Reichweite kann man die
> einfach über ein AD-HOC Netz koppeln, in dem man jeden uc mit einem
> einfachen WLAN Modul verbindet. Ein uc macht mit seinem WLAN Modul den
> AP mit dem die anderen sich connecten können. Das funktioniert dann
> natürlich nur über kleine Reichweiten (beispielsweise innerhalb eines
> Lagers)
> -> einfaches WLAN-Modul statt GSM Modul

WLAN (IEEE 802.11*) ist nicht einfach, zumindest nicht für uC, denn das 
impliziert immer TCP/IP. Es gibt für diesen Zweck geeignetere Verfahren 
wie IEEE 802.15.4/ZigBee oder die 433/868MHz Funkmodule.

> 2. Wenn man mehrere uc über eine sehr große Reichweite kommunizieren
> lassen will kommt man nicht drum rum dies über eine Mobilfunkverbindung
> bzw. über eine über GPRS aufgebaute Internetverbindung zu realisieren ->
> GSM/GPRS Modul inkl. SIM Karte

ja.

fchk

von GPRS (Gast)


Lesenswert?

> WLAN (IEEE 802.11*) ist nicht einfach, zumindest nicht für uC, denn das


OK aber es gibt doch sicherlich Module, die TCP/IP schon implementiert 
haben, d.h. die Realisierung sollte wesentlich einfacher sein als die 
Realisierung über ein GSM/GPRS Modul

von Frank K. (fchk)


Lesenswert?

GPRS schrieb:
>> WLAN (IEEE 802.11*) ist nicht einfach, zumindest nicht für uC, denn das
>
>
> OK aber es gibt doch sicherlich Module, die TCP/IP schon implementiert
> haben, d.h. die Realisierung sollte wesentlich einfacher sein als die
> Realisierung über ein GSM/GPRS Modul

Ähnlich wie bei GSM-Modulen gibt es auch bei WLAN-Modulen einzelne 
Exemplare, die selbst TCP-Verbindungen aufbauen und annehmen können.

Wesentlich einfacher als GSM/GPRS oder UMTS ist das allerdings auch 
nicht.

Im Vergleich zu WLAN sind die extra für diesen Zweck entworfenen 
Kurzstreckenfunk-Standards wie eben IEEE 802.15.4/Zigbee etc deutlich 
stromsparender, und das Netzwerkmanagement ist auch eher das, was DU bei 
Sensornetzwerken haben willst.

fchk

von langeder (Gast)


Lesenswert?

Warum ein GSM-Modul. Ich nutze all die alten Handys mit serieller
Schnittstelle und betreibe mit meinen alten Laptop meine Alarmanlage, 
meine
gesamte Heizungssteuerung und Geräteüberwachung und schalte, wenn 
notwendig
meinen Server oder Drucker ein.

von Frank K. (fchk)


Lesenswert?

langeder schrieb:
> Warum ein GSM-Modul. Ich nutze all die alten Handys mit serieller
> Schnittstelle

Kann man machen, wenn (a) die Geräte im Innenraum sind und es (b) ein 
privates Frickelprojekt ist.

GSM-Module haben aber andere Vorteile:
- kleiner und robuster, geringerer Stromverbrauch (da kein Display etc)
- besser in eigene Produkte integrierbar (der Controller kann das Modul 
zB per IO-Pin ein/ausschalten, um Strom zu sparen)
- können mehr, zB:
  * TCP-Übertragungen eigenständig ohne PPP-Verbindung zum Host
  * Ausführung einer Programme auf dem GSM-Modul ohne externen 
Controller
  * Remote SIM Protocol
  * OTA Update
- externe Antenne anschließbar (das fehlt bei vielen Handys)
- neu und in Stückzahlen erhältlich und damit für kommerzielle Produkte 
geeignet
- bei Bedarf einfacher Umstieg auf UMTS oder LTE

fchk

von GPRS (Gast)


Lesenswert?

Vielleicht noch eine Frage:

Nehmen wir einmal an wir arbeiten in einem Lager und es existieren 
mehrere APs. Also schon einen Router mit WLAN Verbindung wie wir das von 
zu Hause kennen.

Jetzt haben wir mehrere Geräte, die wir gerne mit in dieses Netz 
integrieren würden.

Wenn wir jedes Gerät mit einem WLAN Modul ausstatten (TCP IP Stack etc. 
auf uc implementiert) und diese im Infrastruktur Modus mit dem schon 
bereits vorhandenen ROuter/Ap verbinden. Würde dann nicht die komplette 
GSM/GPRS Geschichte wegfallen, sondern wir bräuchten einfach nur für 
jedes Gerät ein WLAN Modul mit dem wir über AP und Infrastruktur Modus 
Zugang zum Internet verschaffen könnten?

Gruss

von Frank K. (fchk)


Lesenswert?

genau.

von GPRS (Gast)


Lesenswert?

Mmmm.

OK, dann sehe ich den Vorteil von GSM Modulen noch nicht so ganz. Nutz 
man diese nur, wenn man mobil ist und keine gegebene Infrastruktur 
vorliegen hat?

D.h. wann immer die Geräte in einem vorgegebenen Raum (Lager, Firma 
etc.) arbeiten in dem schon ein WLAN Netz über ein Router existiert, 
würde sich anbieten die Geräte über ein WLAN-Modul in dieses Netz zu 
integrieren (über Infrastruktur an Router/AP koppeln).

von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Lesenswert?

GPRS schrieb:
> OK, dann sehe ich den Vorteil von GSM Modulen noch nicht so ganz. Nutz
> man diese nur, wenn man mobil ist und keine gegebene Infrastruktur
> vorliegen hat?

Vereinfacht ausgedrückt stimmt das so.

> D.h. wann immer die Geräte in einem vorgegebenen Raum (Lager, Firma
> etc.) arbeiten in dem schon ein WLAN Netz über ein Router existiert,
> würde sich anbieten die Geräte über ein WLAN-Modul in dieses Netz zu
> integrieren (über Infrastruktur an Router/AP koppeln).

Das ist im Allgemeinen die bevorzugte technische Lösung. Es gibt 
jedoch auch Fälle, in denen diese Lösung organisatorisch nicht 
umsetzbar ist, z.B. weil ein bestimmtes Gerät nicht in das oder die 
vorhandene(n) Netze integriert werden darf. Dann muss man ggf. mit einer 
separaten Mobilfunkverbindung arbeiten.

: Bearbeitet durch User
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
Noch kein Account? Hier anmelden.