Show Posts
Pages: 1 ... 9 10 [11] 12 13 ... 35
151  International / Deutsch / Re: Stromversorgung - Regler umgehen on: June 30, 2013, 01:59:10 pm
Quote
Frage: Sind da Probleme zu erwarten?
klare Antwort: nein
Ich benutzte fast immer den 5V Pin zur Einspeisung der Versorgung (z.B. mit 4x AAA NiMh-Akku). Kann man auch problemlos parallel zur USB Versorgung machen.
152  International / Deutsch / Re: Interrupt Pins, Arduino Mega on: June 30, 2013, 11:38:34 am
Hallo Jan,
steht doch hier http://arduino.cc/en/Main/ArduinoBoardMega2560

External Interrupts: 2 (interrupt 0), 3 (interrupt 1), 18 (interrupt 5), 19 (interrupt 4), 20 (interrupt 3), and 21 (interrupt 2). These pins can be configured to trigger an interrupt on a low value, a rising or falling edge, or a change in value. See the attachInterrupt() function for details.

Die Zahl vor der Klammer steht für den Pin, also Pin2=INT0 oder Pin20=INT3
Gruß
Reinhard
153  International / Deutsch / Re: Binaer_Uhr_Sketch on: June 30, 2013, 11:24:15 am
Hallo,
schon mal vorweg
Code:
for(int Stunden = 0; Stunden < 24; i++)
muss sicher heißen
Code:
for(int Stunden = 0; Stunden < 24; Stunden++)
Dieser Fehler ist mehrfach vorhanden.
Prinzipiell kann das so, wie du das angehst funktionieren, ist aber viel zu kompliziert. Es ist viel einfacher den Port direkt komplett anzusprechen Schau dir mal diese Seite dazu an: http://www.arduino.cc/en/Reference/PortManipulation.
Wenn du das geschickt anstellst, kannst du sozusagen deine INT Minuten direkt auf den Port schieben.
Denk auch daran, dass der Takt des Arduino wahrscheinlich nicht genau genug ist um mit delay() eine Uhr nachzubilden, für erste Programmierversuche aber sicher eine sinnvolle Übung.

(edit: Mist, das war wieder eienr schneller...)
154  International / Deutsch / Re: ifdef ?! on: June 30, 2013, 11:13:19 am
Hallo,
ich habe mal sowas gemacht um den Einsatz von 2 verschiedenen Displays (4x20 oder 2x16) in einem Programm möglich zu machen.
Hier die entscheidenden Zeilen:
Code:
// Code was developed for I2C LCD displays, selection should be done with #define I2CDISPLAY value.
// Debug with serial interface can be activated with define DEBUG

//#define DEBUG   
int dummy;    // this a workaround to avoid error messages with #define and #ifdef, see http://code.google.com/p/arduino/issues/detail?id=206
#define I2CDISPLAY

#define MAXLINES 4    // defines the number of display lines
#define LCD_CHARACTERS 16

#ifdef I2CDISPLAY
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#define LCD_ADRESS 0x27
LiquidCrystal_I2C lcd(LCD_ADRESS,LCD_CHARACTERS,MAXLINES);  // I2C LCD address is 0x27
#else
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);  // RS, E, D4, D5, D6, D7 - the standard connection
#endif
Den gesamten Code findest du hier http://forum.arduino.cc/index.php?topic=85537.0

Ist es das, was du willst?
155  International / Deutsch / Re: LCD Pins anlöten on: June 21, 2013, 05:49:17 pm
Hallo Tonno,

wenn du uns verrätst, welches Display du hast, fällt die Hilfe ganz sicher sehr viel leichter.

Gruß
Reinhard
156  International / Deutsch / Re: Lichtschranke mit IR LED on: June 17, 2013, 02:07:10 pm
Hallo,
z.B. so:


Den Kollektorwiderstand RL kannst du auch durch den Pullup am Eingang des Arduino ersetzen.
Der Eingang geht dann auf LOW, wenn Licht auf den Fototransistor fällt.

Gruß Reinhard
157  International / Deutsch / Re: Relais über Arduino ansteuern - ohne Treiber? on: June 17, 2013, 02:00:57 pm
Hallo,
ja, du kannst das Relais mit einem Arduino Ausgang schalten. Du musst dir aber im klaren sein, dass du dich damit am Grenzwert der Spezifikation bewegst.
Zusätzlich musst du berücksichtigen, dass du in Summe mit mehreren Ausgängen nur 200mA treiben darfst. Geringe Streuung der Parameter der Relais könnten dazu führen, dass der Arduino beschädigt wird.
Ich würde dir empfehlen, einen Transistor für jedes Relais oder ein Relais Treiber IC einzusetzen.
Einen Vorwiderstand für das Relais benötigst du nicht, das Relais begrenzt den Strom durch seinen Innenwiderstand. Auf jeden Fall benötigst du aber eine Freilaufdiode parallel zum Relais.
Bis auf die fehlende Freilaufdiode ist die Skizze korrekt.

Gruß Reinhard
158  International / Deutsch / Re: LM75 liefert immer -3.0 on: June 16, 2013, 04:33:51 pm
Quote
aber dann bitte auch mit gleichem Funktionsumfang
Und was ist mit Hysterese und Interrupt-Ausgang? Und nicht zu vergessen den Shutdown Modus.

Was die Genauigkeit angeht gebe ich dir vollkommen recht.

Reinhard
159  International / Deutsch / Re: LM75 liefert immer -3.0 on: June 16, 2013, 04:03:12 pm
@Micky
Quote
Warum eigentlich dieser LM75? Ist relativ ungenau und als SMD Ausführung nicht gerade toll zu verdrahten. Und nimmt dann auch noch relativ viel Platz in Anspruch.
Alternative? aber dann bitte auch mit gleichem Funktionsumfang.

Reinhard
160  International / Deutsch / Re: tone() und LED-Ausgabe parallel funktioniert nicht!? on: June 16, 2013, 04:00:25 pm
OK, jetzt verstehe ich ....
Also doch ein Leonardo Thema ? Auf dem Mega funktioniert's jedenfalls.
161  International / Deutsch / Re: LM75 liefert immer -3.0 on: June 16, 2013, 03:40:06 pm
Hallo,
ich habe mal eine LM75 Library geschrieben, die ich jetzt auf Arduino >1.0 umgeschrieben habe,  vielleicht kommst du damit weiter.
(ich hoffe es funktioniert alles noch)
Gruß
Reinhard
162  International / Deutsch / Re: tone() und LED-Ausgabe parallel funktioniert nicht!? on: June 16, 2013, 02:33:09 pm
Das liegt daran, dass die tone() Funktion im Hintergrund abläuft.
Du schaltest den Ton ein und sozusagen gleichzeitig die LED, der Ton ist 5s an und die delay Funktion läßt die LED nach 5s, dann gleichzeitig mit dem Ton ausgehen.
Gib mal statt delay(signalTime); delay(signalTime + 1000); ein und du wirst sehen, dass die LED 1s anbleibt.

Und das hat auch nichts mit dem Leonardo zu tun...
163  International / Deutsch / Re: Timer Funktion on: June 16, 2013, 02:18:46 pm
Hallo,

Code:
    t.pulse(pin, 5 * 1000, HIGH); // 5 second
bedeutet nach dieser Erklärung auf der Timer Projektseite:
Quote
int pulse(int pin, long period, int startingValue)
 Toggle the state of the digital output 'pin' just once after 'period' milliseconds. The pin's starting value is specified in 'startingValue', which should be HIGH or LOW.
Offensichtlich wird aber nach weiteren 5s nochmals getoggled und dein Pin geht dauerhaft auf HIGH (startingValue).
Quote
Gibt es da evtl. eine besser Lösung
Ja, millis() - aber das hast du ja ausgeschlossen.
Code:
int pin = 13;
int alarmstatus=0;
unsigned long lastalarm;

void setup()
{
  pinMode(pin, OUTPUT);
  digitalWrite(pin,LOW);
  Serial.begin(9600);
  Serial.println("Prog started");
}

void loop()

  if (alarmstatus!=2) alarmfunktion();  // bevor ein neuer Alarm ausgelöst werden soll, muss alarmstatus auf "0" gesezt werden
}

void alarmfunktion() {
  if (alarmstatus==0) {
    digitalWrite(pin, HIGH);
    lastalarm=millis();
    alarmstatus=1;  // während alarm
  }
  if (millis()-lastalarm >= 5000) {
    digitalWrite(pin,LOW);
    alarmstatus=2;  // nach Alarm
  } 
}
164  International / Deutsch / Re: ATMEGA ohne Arduinoboard nutzen / Laufzeit bei Batteriebetrieb on: June 16, 2013, 01:12:16 pm
Erstaunlich! http://www.conrad.de/ce/de/product/157954/DCDC-Wandler-Innoline-R-78E50-05-Recom-International-R-78E50-05-Gehaeuseart-SIP-3-Ausgangsspannung-5-VDC-Ausgangs, Conrad steigt in meiner Achtung.
Schaltregler sind zwar effizient, die Angaben zum Wirkungsgrad gelten aber nur bei Volllast. Wenn der ATmega schläft braucht der fast keinen Strom, der Schaltregler braucht aber weiterhin Strom, z.B. 2mA der von Pololu. Da ist die Batterie eben auch schnell leer. Im Datenblatt von Innoline ist erst gar kein Ruhestrom angegeben, dafür aber ein Betriebsbereich von 5mA - 500mA, das macht nachdenklich.  Vielleicht kann jemand, der den in der Bastelkiste hat mal nachmessen.
165  International / Deutsch / Re: Benötige Hilfe bei Auswahl eines Gyroskopsensors und Geschwindigkeitsmessers on: June 16, 2013, 12:56:19 pm
Die Adressen sind in der MPU60X0 Library im File MPU60X0.h definiert.
Code:
#define MPU60X0_ADDRESS_AD0_LOW     0x68 // address pin low (GND), default for InvenSense evaluation board
#define MPU60X0_ADDRESS_AD0_HIGH    0x69 // address pin high (VCC)
#define MPU60X0_DEFAULT_ADDRESS     MPU60X0_ADDRESS_AD0_LOW
Pages: 1 ... 9 10 [11] 12 13 ... 35