Pages: 1 [2] 3 4 5   Go Down
Author Topic: 3.0 Volt - 3.3 Volt Bauteile an Arduino Uno  (Read 6647 times)
0 Members and 1 Guest are viewing this topic.
Germany, BW
Offline Offline
Sr. Member
****
Karma: 7
Posts: 302
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Jetzt hab ichs im Datenblatt gefunden:
CMOS I/O signal levels (3)
VIL: -0.3V…0.8V, VIH: 2.0V…3.6V,
VOL:-0.3V…0.4V, VOH: 2.4V…3.2V
Note (3): Fastrax UP501R UART signals are RS232 compatible.

Bleiben wir also bei den Spannungswandlern auf 3,3V für die serielle Geschichte...

Ah und noch eine zweite Frage, ich habe einen Sensor, der mit einer Spannung von 3.0 bis 5.5 Volt betrieben werden kann,
wenn ich dieses Bauteil mit 3.3 Volt betreibe, bedeutet es doch auch, dass der Sensor länger über Batterie betrieben werden kann, als wenn ich diesen an 5 Volt klemme, oder liege ich da falsch?  
« Last Edit: December 26, 2012, 08:24:38 am by Mardetuino » Logged

Forum Moderator
BZ (I)
Offline Offline
Brattain Member
*****
Karma: 266
Posts: 21671
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Seite 9, http://www.anglia.com/fastrax/datasheets/UP501.pdf
2.2 Absolute maximum ratings
Table 3 Absolute maximum ratings
...
Input voltage on any input connection -0.3 +3.6 V

Quote
Ah und noch eine zweite Frage, ich habe einen Sensor, der mit einer Spannung von 3.0 bis 5.5 Volt betrieben werden kann,
wenn ich dieses Bauteil mit 3.3 Volt betreibe, bedeutet es doch auch, dass der Sensor länger über Batterie betrieben werden kann, als wenn ich diesen an 5 Volt klemme, oder liege ich da falsch?
 
Ich glaube Du überschätzt die Stromersparnis. Welcher Sensor ist das?
Grüße Uwe
Logged

Germany S-H
Offline Offline
Faraday Member
**
Karma: 146
Posts: 3040
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bleiben wir also bei den Spannungswandlern auf 3,3V für die serielle Geschichte...

Musst Du das Modul überhaupt über die serielle Schnittstelle umkonfigurieren?
Normalerweise haut es doch auch in Standardkonfiguration seine Daten raus, reicht Dir das nicht?

Laut Datenblatt:
Code:
1.1 Default firmware configuration
Fastrax UP501 default firmware configuration:
1. Port 0: NMEA 9600 baud
2. NMEA output: GGA, RMC, GSV, GSA (all 1 sec interval)
3. DGPS/SBAS: Disabled (Module supports WAAS/EGNOS)
4. Datum: WGS84
Vielleicht passt das ja?

Dann bräuchtest Du ja nur den Ausgang (TX) des UP501 mit dem Eingang (RX) des Arduino verbinden und er kann problemlos seine Daten am Arduino loswerden.

Und den problematischen Pin als Eingang (RX) des UP501 lässt Du genau so unbeschaltet wie den Sendepin (TX) des Arduino.

Dann kannst Du Deine Daten vom UP501 empfangen (mit etwas zu niedrigem Pegel, die der Arduino aber trotzdem erkennen kann), Du kannst das Modul dann nur nicht von der Werkseinstellung umkonfigurieren.
Logged

Darmstadt
Offline Offline
Jr. Member
**
Karma: 1
Posts: 73
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Wow, cool vielen Dank für die ganzen Informationen und die Hilfsbereitschaft!

Was ich jetzt noch nicht so ganz verstanden haben ist die Aussage von Mardetuino:
Dabei würde ich aber imm einen Widerstand von ca. 1k dazwischen hängen, nur zur Sicherheit.
Warum einen Wiederstand dazwischen hängen?

Meinen Aufbau für das GPS Modul würde ich dann wie folgt realisieren:
Pin 1 ziehe ich auf GND,
Pin 2 schliesse ich an einen digital I/O des Arduinos,
Pin 3 ziehe ich auch GND,
Pin 4 und 5 schliesse ich an die 3.3 Volt des Arduinos an.



diesen Hinweis hat mir der Verkäufer noch zukommen lassen:
Quote
The only thing you'll need to watch for is that the module is designed to run at about 3.3V, and shouldn't be powered by 5.0V. If you're using an Arduino, simply connect the GPS power pin to the 3.3V pin. If you want to configure the module, you'll want to put a 10K resistor divider on the RX pin so you don't put 5V on the data pin. We include these resistors, as well as a 6 pin header you can solder to the module in order to plug it into a breadboard.

Ich weis nur nicht was er mit den Wiedertänden und dem Konfigurieren meint. :-( Falls jemand eine Idee hat, wäre ich dankbar

Hier ist noch der Code:
Quote
// Test code for Adafruit GPS modules using MTK driver
// such as www.adafruit.com/products/660
// Pick one up today at the Adafruit electronics shop
// and help support open source hardware & software! -ada

  #if (ARDUINO >= 100)
#include <SoftSerial.h>
SoftSerial mySerial(2, 3);
  #else
// If you're using Arduino IDE v23 or earlier, you'll
// need to install NewSoftSerial
#include <NewSoftSerial.h>
NewSoftSerial mySerial(2, 3);
  #endif

// Connect the GPS Power pin to 3.3V
// Connect the GPS Ground pin to ground
// Connect the GPS VBAT pin to 3.3V if no battery is used
// Connect the GPS TX (transmit) pin to Digital 2
// Connect the GPS RX (receive) pin to Digital 3
// For 3.3V only modules such as the UP501, connect a 10K
// resistor between digital 3 and GPS RX and a 10K resistor
// from GPS RX to ground.

// different commands to set the update rate from once a second (1 Hz) to 10 times a second (10Hz)
#define PMTK_SET_NMEA_UPDATE_1HZ  "$PMTK220,1000*1F"
#define PMTK_SET_NMEA_UPDATE_5HZ  "$PMTK220,200*2C"
#define PMTK_SET_NMEA_UPDATE_10HZ "$PMTK220,100*2F"

// turn on only the second sentence (GPRMC)
#define PMTK_SET_NMEA_OUTPUT_RMCONLY "$PMTK314,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0*29"
// turn on ALL THE DATA
#define PMTK_SET_NMEA_OUTPUT_ALLDATA "$PMTK314,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0*28"

// to generate your own sentences, check out the MTK command datasheet and use a checksum calculator
// such as the awesome http://www.hhhh.org/wiml/proj/nmeaxor.html

void setup() 
{
  Serial.begin(57600);
  Serial.println("Adafruit MTK3329 NMEA test!");

  // 9600 NMEA is the default baud rate
  mySerial.begin(9600);
 
  // uncomment this line to turn on only the "minimum recommended" data for high update rates!
  //mySerial.println(PMTK_SET_NMEA_OUTPUT_RMCONLY);

  // uncomment this line to turn on all the available data - for 9600 baud you'll want 1 Hz rate
  mySerial.println(PMTK_SET_NMEA_OUTPUT_ALLDATA);
 
  // Set the update rate
  // 1 Hz update rate
  mySerial.println(PMTK_SET_NMEA_UPDATE_1HZ);
  // 5 Hz update rate- for 9600 baud you'll have to set the output to RMC only (see above)
  //mySerial.println(PMTK_SET_NMEA_UPDATE_5HZ);
  // 10 Hz update rate - for 9600 baud you'll have to set the output to RMC only (see above)
  //mySerial.println(PMTK_SET_NMEA_UPDATE_10HZ);

}

void loop()                     // run over and over again
{

  if (mySerial.available()) {
      Serial.print((char)mySerial.read());
  }
  if (Serial.available()) {
      mySerial.print((char)Serial.read());
  }
}
« Last Edit: December 27, 2012, 05:29:34 am by BigInteger » Logged

Germany S-H
Offline Offline
Faraday Member
**
Karma: 146
Posts: 3040
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ich weis nur nicht was er mit den Wiedertänden und dem Konfigurieren meint. :-( Falls jemand eine Idee hat, wäre ich dankbar

Das ist doch im von Dir geposteten Code genau erklärt:

// For 3.3V only modules such as the UP501, connect a 10K
// resistor between digital 3 and GPS RX and a 10K resistor
// from GPS RX to ground.

Zwischen Digital 3 und Ground installierst Du 2*10K Widerstände in Reihenschaltung, und am Mittelabgriff des so gebildeten Spannungsteilers zweigst Du zu GPS RX ab (wo dann nur die halbe Spannung statt der vollen 5V vom Arduino-Pin ankommt).
« Last Edit: December 27, 2012, 06:36:20 am by jurs » Logged

Germany, BW
Offline Offline
Sr. Member
****
Karma: 7
Posts: 302
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Dabei würde ich aber immer einen Widerstand von ca. 1k dazwischen hängen, nur zur Sicherheit.

Damit habe ich gemeint, dass wenn du einen Ausgang eines "Moduls" an einen Eingang des Arduino hängst, ist es empfehlenswert einen strombegrenzenden Widerstand von ca. 1k in Serie zu schalten.
Das Verhindert, dass wenn du den Eingang ausversehen als Ausgang schaltest, ein zu hoher Strom fließt.
Logged

Darmstadt
Offline Offline
Jr. Member
**
Karma: 1
Posts: 73
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Super, danke euch!

Ich könnte mir aber auch ein eigenes GPS Shield bauen, auf das ich dann auch eine 3Volt Knopfbatterie machen kann, für die Backupbatterie, oder?

Ich würde dann einen Transistor nehmen, mit dem ich die 5 Volt auf die 3.0 - 4.3 Volt runter regel und auch die schon erwähnten Sicherungswiederstände, damit nichts kaputt gehen kann. Oder ist dies zu aufwendig?

Ich würde dazu Prototypboards verwenden, die ich mir zurechtschneide.
« Last Edit: December 27, 2012, 11:47:37 am by BigInteger » Logged

Forum Moderator
BZ (I)
Offline Offline
Brattain Member
*****
Karma: 266
Posts: 21671
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Nachtrag bezüglich Eingangsspannungstollerante Bauteile.
Die Modellfamilie LVX, LVT, LVC, LCX der TTL74 Serie sind für 3,3V Betriebsspannung ausgelegt haben aber meist 5V tollerante Eingänge; Ideal für die Pegalanpassung 5V ->3,3V.
Ich habe keine vollständige Liste der TTL Familien gefunden und in den verscheidenen Quellen gab es immer wieder verschiedene Buchstabenkombinationen darum generell, bevor Ihr euch blind auf mich verläßt, im Datenblatt kontrolleiren.
Da bietet sich zB an 74LVX125 für 4 Eingänge und 74LVX541 für 8.
Grüße Uwe
« Last Edit: December 27, 2012, 04:50:58 pm by uwefed » Logged

Darmstadt
Offline Offline
Jr. Member
**
Karma: 1
Posts: 73
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ich war heute meine Wiederstände kaufen für mein Projekt, und man hat mir dort etwas komisches erklärt was ich so noch nicht kannte. Auf meine Frage wie ich am sichersten das GPS Modul mit VDD 3.0 bis 4.2Volt ansteuere, hat mir der Verkäufer folgenden Rat gegeben.
Ich soll GND mit einem I/O Pin des Arduinos mit zwei Widerständen (3,3kOhm an GND und 1,8kOhm an I/O) in Reihe schalten und zwischen den beiden Widerständen dann die angeblichen 3,2 Volt abnehmen. Somit könnte ich mit den 5Volt des Arduinos arbeiten ohne Gefahr zu laufen das GPS Modul und den Arduino zu Schrotten.

Skizze:

I/O
 |
 -
 || 1,8kOhm
 -
 |
 +-------- 3,2Volt
 |
 -
 || 3,3 kOhm
 -
 |
GND
Logged

Forum Moderator
BZ (I)
Offline Offline
Brattain Member
*****
Karma: 266
Posts: 21671
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ich war heute meine Wiederstände kaufen für mein Projekt, und man hat mir dort etwas komisches erklärt was ich so noch nicht kannte. Auf meine Frage wie ich am sichersten das GPS Modul mit VDD 3.0 bis 4.2Volt ansteuere, hat mir der Verkäufer folgenden Rat gegeben.
Ich soll GND mit einem I/O Pin des Arduinos mit zwei Widerständen (3,3kOhm an GND und 1,8kOhm an I/O) in Reihe schalten und zwischen den beiden Widerständen dann die angeblichen 3,2 Volt abnehmen. Somit könnte ich mit den 5Volt des Arduinos arbeiten ohne Gefahr zu laufen das GPS Modul und den Arduino zu Schrotten.

mkl0815  hat das bereits in der ersten Antwort geschrieben:
Quote
Auf Nummer Sicher gehst Du, wenn Du einen Pegelwandler verwendest, oder im einfachsten Fall einen Spannungsteiler mit 2 Widerständen, die das Ausgangssignal des Arduino auf 3.3V bringen. Schau Dir mal die verschiedenen Beschaltungsbeispiele für SD-Karten an, da wird das häufig so gemacht.

Auch Mardetuino:
Quote
Alle Signale die zum Modul gehen über Spannungsteiler auf 3,3V hinpegeln.

Auch Jurs; auch wenn er einen Spannungteiler für 2,5V vorschlägt, der aber auch funktionieren würde.
Quote
Zwischen Digital 3 und Ground installierst Du 2*10K Widerstände in Reihenschaltung, und am Mittelabgriff des so gebildeten Spannungsteilers zweigst Du zu GPS RX ab (wo dann nur die halbe Spannung statt der vollen 5V vom Arduino-Pin ankommt).

Liest Du nicht was wir schreiben?

Grüße Uwe
Logged

Darmstadt
Offline Offline
Jr. Member
**
Karma: 1
Posts: 73
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ich lese das schon, nur bin ich leider kein E-Techniker sondern Informatiker, somit verstehe ich manches nicht ganz. Ich hantiere leider nur theoretisch mit nMOS und cMOS so wie Transistoren aber habe mich leider noch nie damit auseinandersetzen müssen wie ich Spannungen von 5 Volt auf unter 5 Volt drücke und somit hab ich leider keine Ahnung von Widerständen, da ich diese bisher leider noch nicht verwendet habe. Ich kenne die Ohmsche-Gesetze aber auch nur aus der Theorie ohne diese jemals angewandt zu haben :-( 

Du meinst bestimmt das hier http://s7.directupload.net/file/d/3118/hszocbka_jpg.htm

aber das entspricht nicht der Schaltung hier:
« Last Edit: December 28, 2012, 05:35:44 pm by uwefed » Logged

Forum Moderator
BZ (I)
Offline Offline
Brattain Member
*****
Karma: 266
Posts: 21671
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Du meinst bestimmt das hier http://s7.directupload.net/file/d/3118/hszocbka_jpg.htm
aber das entspricht nicht der Schaltung hier: ...
Ja, das entspricht mehr oder weniger (die Widerstandswerte sind anders und darum leicht die Ausgangspannung) aber es funktioniert beides.

Frag uns einfach; wir haben noch keinem den Kopf abgebissen weil er etwas gefragt hat.  smiley-wink smiley-wink smiley-wink
Wir werden nur frech wenn jemand alles gleich gemacht haben will oder uns raten läßt.   smiley-wink smiley-wink smiley-wink

Grüße Uwe
Logged

Darmstadt
Offline Offline
Jr. Member
**
Karma: 1
Posts: 73
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ich habe das jetzt so verbunden

und den Beispielcode verwendet
Siehe: https://raw.github.com/adafruit/Adafruit-MTK3329-GPS-Module-Test-Sketch/master/Adafruit_MTK3329_GPS_Test.pde

Aber leider bekomme ich nur eine folge von ? und ÄÜ's woran kann das liegen? smiley-eek
Logged

Germany
Offline Offline
Edison Member
*
Karma: 47
Posts: 2322
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Sieht auf den ersten Blick wie ein Baudraten-Fehler aus. Allerdings ist die Standardeinstellung des GPS-Moduls 9600 und auch dein Programmschnipsel "spricht" 9600 bps. Hattest du versucht, das zu ändern, dass nun die Geschwindigkeiten nicht mehr passen?
Logged

Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

Offline Offline
Jr. Member
**
Karma: 0
Posts: 78
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ah und noch eine zweite Frage, ich habe einen Sensor, der mit einer Spannung von 3.0 bis 5.5 Volt betrieben werden kann,
wenn ich dieses Bauteil mit 3.3 Volt betreibe, bedeutet es doch auch, dass der Sensor länger über Batterie betrieben werden kann, als wenn ich diesen an 5 Volt klemme, oder liege ich da falsch? 

Nein. Singt die Spannung, setigt der Strom. Steigt die Spannung, sinkt der Strom. Viele meinen auch, das wenn man eine Lampe dimmt, verbraucht die weniger Strom. Dies ist ebenfalls falsch. Hättest Du nach der Nennleistung gefragt, die bleibt in beiden fällen gkeich.

Ein einfaches Beispiel: Eine Nennleistung von 20 KW an einer Spannung von 230 volt soll über eine längere Strecke übertragen werden.
I=P/U => 20000W/230V => 87A

Erhöt mann die Spannung auf 10 KV, ergibt sich ein Strom von 2 Amper.
I=P/U => 20Kw (20000W)/10 KV (10000V) => 2A

Ergo Dein Modul braucht mit 3.3 volt genausoviel leistung wie mit 5 volt.
Logged

Pages: 1 [2] 3 4 5   Go Up
Jump to: