Show Posts
Pages: 1 ... 9 10 [11] 12 13 ... 33
151  International / Deutsch / Re: Arduino Sprachausgabe on: June 14, 2013, 05:06:48 am
Danke für den Tip bzgl Video, hab's oben modifizerit.

Mal sehen, ob ich ein deutsches Beispiel finde mit DECtalk.
152  International / Deutsch / Arduino Sprachausgabe on: June 14, 2013, 03:49:40 am
Hallo,
bin gerade über diese Platine "gestolpert". (-> http://www.grandideastudio.com/portfolio/emic-2-text-to-speech-module/ )
Ein Text-to-Speech Modul, dass sich ziemlich gut anhört (erhältlich bei Watterott)

 


Weiß jemand, ob es etwas vergleichbares deutschsprachig gibt.
Gruß
Reinhard

(P.S.: wieso schaff ich das nicht Videos einzubinden ?)

edit: Video von youtube.com eingebunden - Danke jurs
153  International / Deutsch / Re: Dumme Frage zum Gyro MPU-6050 on: June 13, 2013, 11:18:07 am
Ich habe ein neues Sketch Verzeichnis angelegt und das in der IDE 1.0.5 verlinkt.
In diesem Verzeichnis stehen jetzt nur die freeIMU Libraries, sonst nichts.
Sketch Kompilierung funktioniert dann ohne Fehler.
154  International / Deutsch / Re: Dumme Frage zum Gyro MPU-6050 on: June 11, 2013, 02:47:49 pm
Hallo ihr Beiden,
mit dem gleichen Problem habe ich mich auch das halbe Wochenende rumgeschlagen.
Ich bekomme keinen Sketch aus den freeIMU Beispielen compiliert.
Auch ich habe lange Fehlerlisten. Ich habe einen MPU-6050 ohne Kompassmodul.
Gruß
Reinhard
155  International / Deutsch / Re: arduino micro und lcd 16*2 on: June 11, 2013, 02:32:20 pm
Hallo,

hier http://arduino.cc/en/Main/ArduinoBoardMicro ist das Pinout des Micro beschrieben und eine Grafik ist auch dabei

DPorts > 13 finde ich da keine.
Versuch am besten als erstes ein digitalWrite auf jeden der Ports, zB digitalWrite(A0, HIGH), um zu testen, ob die Ports unter den Konstanten angessprochen werden.
Wenn das für jeden der Ports funktioniert, liegt der Fehler woanders. Wie hast du R/W angeschlossen?

Gruß aus Köln
156  International / Deutsch / Re: Näherungsschalter soll Arduino aufwecken on: June 09, 2013, 02:46:19 pm
Hallo,
kurzer Zwischenbericht: der PIR Sensor hat einen Ruhestrom von ca. 70uA, das passt.
Ich habe eine Testschaltung auf einem Breadboard aufgebaut mit einem ATmega168, der über INT0 geweckt wird. Da der Ausgang des PIR Sensors aktiv HIGH ist, muss dieser invertiert werden. Im Sleep-Mode verbraucht die gesamte Schaltung (ein LCD gehört auch noch dazu) nur noch 450uA.
Ein Blog ( -> http://glaskugelsehen.wordpress.com/2013/06/09/arduino-atmega-mit-bewegungsmelder-aufwecken/) dazu ist gerade in Arbeit, dort findet sich auch der Code und eine ausführlichere Beschreibung.
Gruß
Reinhard
157  International / Deutsch / Re: Arduino Uno + ATtiny 45 Upload funktioniert nicht on: June 07, 2013, 04:53:18 am
Hallo lenhar,
diese Fehlermeldung scheint "normal" zu sein, siehe http://www.kobakant.at/DIY/?p=3742 oder http://hlt.media.mit.edu/?p=1229.
Wird das Programm z.B. blink denn geladen? Wenn ja, kanst du die Fehlermeldung ignorieren.
Gruß
Reinhard
158  International / Deutsch / Re: Unipolar Stepper im Halbschritt Betrieb on: May 28, 2013, 04:31:38 pm
Hallo,
vielen Dank für die Vorschläge.

Da ich den Port direkt setzen wollte, habe ich mich für die Array-Lösung entschieden.
Hier die entscheidenden Programmteile, der genutzte Port ist PORTL auf dem Mega. Daran hängt dann der L293.
Code:
#define PAUSE_S delayMicroseconds(1000)   // 700us ist Minimum
byte steps_a[] = {0B1000, 0B1100, 0B0100, 0B0110, 0B0010, 0B0011, 0B0001, 0B1001};
byte pos_a;

void setup() {
  DDRL = 0B11111111;   // Port L am Mega auf Output
}

void loop() {
  for (int i=0;i<1;i++) {
    ccw_a(10);
  } 
  for (int i=0;i<1;i++) {
    cw_a(10);
  }
}

void cw_a(unsigned int steps) {
  for (unsigned int i=0; i<steps;i++) {
    if (pos_a==7) pos_a=0;
    else pos_a++;
    PORTL = (PORTL & 0xF0) | steps_a[pos_a];
    PAUSE_S;
  }
}

void ccw_a(unsigned int steps) {
  for (unsigned int i=0; i<steps;i++) {
    if (pos_a==0) pos_a=7;
    else pos_a--;
    PORTL = (PORTL & 0xF0) | steps_a[pos_a];
    PAUSE_S;
  }
}
Im Komplettausbau hängt an den oberen 4 Bit des PORTL eine weiterer L293, der die andere Achse steuert.

Gruß
Reinhard
159  International / Deutsch / Unipolar Stepper im Halbschritt Betrieb on: May 26, 2013, 04:26:15 pm
Hallo,
ich programmiere gerade einen Unipolar Stepper, der mit einem L293 angesteuert wird.
Im Halbschrittmodus muss ich folgende Logikfolge für cw (im Uhrzeigersinn) ansteuern.
Für 4 Digitalausgänge:
Code:
1000
1100
0100
0110
0010
0011
0001
1001
Jetzt hätte ich gerne ein einfaches Sub(), das ich aufrufe, um einen Schritt cw zu machen. Ich komm nicht drauf, wie ich das nach rechts schieben und den Wechsel von einer 1 zu zweimal 1 kombinieren könnte.

Gruß
Reinhard
160  International / Deutsch / Re: OT:Zener-Diode Widerstand berechnen on: May 24, 2013, 07:02:11 pm
Quote
Wenn Du eine Maximalspannung von 14V mit der Genauigkeit von zehntel-Volt haben willst dann ist der ADC des Arduino nicht geeignet.
Wieso? 14Volt auf 10Bit macht 0,013V / Bit Auflösung.
Mein Vorschlag: nutze die interne 1,1V Referenz und dimensioniere den Spannungsteiler so, dass bei 14V Eingang am Analogengang 1,1V anliegen.
z.B R1=15k, R2=1.2k, parallel zu R2 eine Z-Diode mit 5.1V dann als Schutz für den Eingang, falls notwendig.

Gruß
Reinhard
161  International / Deutsch / Re: Funkschaltsteckdose > Relaisschaltdose on: May 24, 2013, 06:43:47 pm
Hallo Thorsten,

eigentlich wird nicht zwingend die Phase geschaltet, denn welcher Leiter geschaltet wird, hängt ja davon ab, wie herum, man die Funksteckdose einsteckt.
Ist aber eigentlich auch egal.
Der zweite Leiter wird nur auf die Platine geführt, weil irgendwoher muss das IC ja seinen Strom bekommen. Auf der Platine ist ein Kondesatornetzteil, dass aus 230V die Spannung für das IC und die Steuerspannung für das Relais erzeugt.
Aus meiner Sicht spricht nichts dagegen, dein 5V Relais zu verwenden. Den zweiten Leiter brauchst du dann nicht beachten.
Aber Vorsicht!! Hier geht es um Netzspannung, die lebensgefährlich ist. Gib dich da nur dran, wenn du genau weißt, was du tust.

Gruß
Reinhard
162  International / Deutsch / Re: Sprachbefehl des EasyVR Shield in eine Stromstoßfunktion einbinden ;) on: May 24, 2013, 06:32:56 pm
Hallo,

nach dem Durchlauf der if-Schleife wird "vorherwert = G1_AN" (immer) gesetzt, d.h. das Programm kommt nie mehr in die if-Schleife und die Variable zaehler verändert sich nicht mehr, damit wird der Zustand des pin2 immer gleich bleiben.

Wenn du den pin2 mit dem Befehl G1_AN toggeln willst, warum dann nicht:
Code:
case G1_AN:
     digitalWrite(pin2, !digitalRead(pin2));
 

Gruß
Reinhard
163  International / Deutsch / Re: Frage zu Projekt: selbstbalancierender Roboter (segway ähnlich) on: May 22, 2013, 04:27:06 pm
Ein einfacher Motortreiber ist der L298, den es auch fertig verbaut als Modul gibt. Gib mal bei eBay L298 ein, da findest du jede Menge Anbieter. Mit einem Modul kannst du 2 Gleichspannungs Motoren vorwärts und rückwärts drehend betreiben
164  International / Deutsch / 5x7 Character Set auf den Kopf gestellt on: May 12, 2013, 03:10:55 pm
Hallo,

für mein derzeitiges Projekt <Laser Projektor> war ich auf der Suche nach dem passenden Zeichensatz in 5x7. Dummerweise konnte ich nur einen finden, der für mein Design auf dem Kopf stand. Also gab es zwei Möglichkeiten:
den Laser Projektor auf den Kopf stellen -> nicht schön !
oder den Zeichensatz umwandeln.
Gesagt getan und schnell mal ein Programm dafür geschrieben ... (na, ja so schnell war es nicht getan, aber immer noch schneller wie selbst gedottet)
Falls jemand mal in eine ähnliche Situation kommen sollte, möchte ich das Programm hier gerne sharen. Der gedrehte Zeichensatz wird seriell ausgegeben und kann von dort kopiert werden. Formatierung ist so, dass er direkt in eigene Programme eingebunden werden kann. Mit kleinen Modifikationen kann das Programm auch genutzt werden, um Zeichensätze zu spiegeln.
Code:
#include <avr/pgmspace.h>

// The 7-bit ASCII character set... found in PCD8544 library
const unsigned char charset[][5] PROGMEM = {
  { 0x00, 0x00, 0x00, 0x00, 0x00 },  // 20 space
  { 0x00, 0x00, 0x5f, 0x00, 0x00 },  // 21 !
  { 0x00, 0x07, 0x00, 0x07, 0x00 },  // 22 "
  { 0x14, 0x7f, 0x14, 0x7f, 0x14 },  // 23 #
  { 0x24, 0x2a, 0x7f, 0x2a, 0x12 },  // 24 $
  { 0x23, 0x13, 0x08, 0x64, 0x62 },  // 25 %
  { 0x36, 0x49, 0x55, 0x22, 0x50 },  // 26 &
  { 0x00, 0x05, 0x03, 0x00, 0x00 },  // 27 '
  { 0x00, 0x1c, 0x22, 0x41, 0x00 },  // 28 (
  { 0x00, 0x41, 0x22, 0x1c, 0x00 },  // 29 )
  { 0x14, 0x08, 0x3e, 0x08, 0x14 },  // 2a *
  { 0x08, 0x08, 0x3e, 0x08, 0x08 },  // 2b +
  { 0x00, 0x50, 0x30, 0x00, 0x00 },  // 2c ,
  { 0x08, 0x08, 0x08, 0x08, 0x08 },  // 2d -
  { 0x00, 0x60, 0x60, 0x00, 0x00 },  // 2e .
  { 0x20, 0x10, 0x08, 0x04, 0x02 },  // 2f /
  { 0x3e, 0x51, 0x49, 0x45, 0x3e },  // 30 0
  { 0x00, 0x42, 0x7f, 0x40, 0x00 },  // 31 1
  { 0x42, 0x61, 0x51, 0x49, 0x46 },  // 32 2
  { 0x21, 0x41, 0x45, 0x4b, 0x31 },  // 33 3
  { 0x18, 0x14, 0x12, 0x7f, 0x10 },  // 34 4
  { 0x27, 0x45, 0x45, 0x45, 0x39 },  // 35 5
  { 0x3c, 0x4a, 0x49, 0x49, 0x30 },  // 36 6
  { 0x01, 0x71, 0x09, 0x05, 0x03 },  // 37 7
  { 0x36, 0x49, 0x49, 0x49, 0x36 },  // 38 8
  { 0x06, 0x49, 0x49, 0x29, 0x1e },  // 39 9
  { 0x00, 0x36, 0x36, 0x00, 0x00 },  // 3a :
  { 0x00, 0x56, 0x36, 0x00, 0x00 },  // 3b ;
  { 0x08, 0x14, 0x22, 0x41, 0x00 },  // 3c <
  { 0x14, 0x14, 0x14, 0x14, 0x14 },  // 3d =
  { 0x00, 0x41, 0x22, 0x14, 0x08 },  // 3e >
  { 0x02, 0x01, 0x51, 0x09, 0x06 },  // 3f ?
  { 0x32, 0x49, 0x79, 0x41, 0x3e },  // 40 @
  { 0x7e, 0x11, 0x11, 0x11, 0x7e },  // 41 A
  { 0x7f, 0x49, 0x49, 0x49, 0x36 },  // 42 B
  { 0x3e, 0x41, 0x41, 0x41, 0x22 },  // 43 C
  { 0x7f, 0x41, 0x41, 0x22, 0x1c },  // 44 D
  { 0x7f, 0x49, 0x49, 0x49, 0x41 },  // 45 E
  { 0x7f, 0x09, 0x09, 0x09, 0x01 },  // 46 F
  { 0x3e, 0x41, 0x49, 0x49, 0x7a },  // 47 G
  { 0x7f, 0x08, 0x08, 0x08, 0x7f },  // 48 H
  { 0x00, 0x41, 0x7f, 0x41, 0x00 },  // 49 I
  { 0x20, 0x40, 0x41, 0x3f, 0x01 },  // 4a J
  { 0x7f, 0x08, 0x14, 0x22, 0x41 },  // 4b K
  { 0x7f, 0x40, 0x40, 0x40, 0x40 },  // 4c L
  { 0x7f, 0x02, 0x0c, 0x02, 0x7f },  // 4d M
  { 0x7f, 0x04, 0x08, 0x10, 0x7f },  // 4e N
  { 0x3e, 0x41, 0x41, 0x41, 0x3e },  // 4f O
  { 0x7f, 0x09, 0x09, 0x09, 0x06 },  // 50 P
  { 0x3e, 0x41, 0x51, 0x21, 0x5e },  // 51 Q
  { 0x7f, 0x09, 0x19, 0x29, 0x46 },  // 52 R
  { 0x46, 0x49, 0x49, 0x49, 0x31 },  // 53 S
  { 0x01, 0x01, 0x7f, 0x01, 0x01 },  // 54 T
  { 0x3f, 0x40, 0x40, 0x40, 0x3f },  // 55 U
  { 0x1f, 0x20, 0x40, 0x20, 0x1f },  // 56 V
  { 0x3f, 0x40, 0x38, 0x40, 0x3f },  // 57 W
  { 0x63, 0x14, 0x08, 0x14, 0x63 },  // 58 X
  { 0x07, 0x08, 0x70, 0x08, 0x07 },  // 59 Y
  { 0x61, 0x51, 0x49, 0x45, 0x43 },  // 5a Z
  { 0x00, 0x7f, 0x41, 0x41, 0x00 },  // 5b [
  { 0x02, 0x04, 0x08, 0x10, 0x20 },  // 5c backslash
  { 0x00, 0x41, 0x41, 0x7f, 0x00 },  // 5d ]
  { 0x04, 0x02, 0x01, 0x02, 0x04 },  // 5e ^
  { 0x40, 0x40, 0x40, 0x40, 0x40 },  // 5f _
  { 0x00, 0x01, 0x02, 0x04, 0x00 },  // 60 `
  { 0x20, 0x54, 0x54, 0x54, 0x78 },  // 61 a
  { 0x7f, 0x48, 0x44, 0x44, 0x38 },  // 62 b
  { 0x38, 0x44, 0x44, 0x44, 0x20 },  // 63 c
  { 0x38, 0x44, 0x44, 0x48, 0x7f },  // 64 d
  { 0x38, 0x54, 0x54, 0x54, 0x18 },  // 65 e
  { 0x08, 0x7e, 0x09, 0x01, 0x02 },  // 66 f
  { 0x0c, 0x52, 0x52, 0x52, 0x3e },  // 67 g
  { 0x7f, 0x08, 0x04, 0x04, 0x78 },  // 68 h
  { 0x00, 0x44, 0x7d, 0x40, 0x00 },  // 69 i
  { 0x20, 0x40, 0x44, 0x3d, 0x00 },  // 6a j
  { 0x7f, 0x10, 0x28, 0x44, 0x00 },  // 6b k
  { 0x00, 0x41, 0x7f, 0x40, 0x00 },  // 6c l
  { 0x7c, 0x04, 0x18, 0x04, 0x78 },  // 6d m
  { 0x7c, 0x08, 0x04, 0x04, 0x78 },  // 6e n
  { 0x38, 0x44, 0x44, 0x44, 0x38 },  // 6f o
  { 0x7c, 0x14, 0x14, 0x14, 0x08 },  // 70 p
  { 0x08, 0x14, 0x14, 0x18, 0x7c },  // 71 q
  { 0x7c, 0x08, 0x04, 0x04, 0x08 },  // 72 r
  { 0x48, 0x54, 0x54, 0x54, 0x20 },  // 73 s
  { 0x04, 0x3f, 0x44, 0x40, 0x20 },  // 74 t
  { 0x3c, 0x40, 0x40, 0x20, 0x7c },  // 75 u
  { 0x1c, 0x20, 0x40, 0x20, 0x1c },  // 76 v
  { 0x3c, 0x40, 0x30, 0x40, 0x3c },  // 77 w
  { 0x44, 0x28, 0x10, 0x28, 0x44 },  // 78 x
  { 0x0c, 0x50, 0x50, 0x50, 0x3c },  // 79 y
  { 0x44, 0x64, 0x54, 0x4c, 0x44 },  // 7a z
  { 0x00, 0x08, 0x36, 0x41, 0x00 },  // 7b {
  { 0x00, 0x00, 0x7f, 0x00, 0x00 },  // 7c |
  { 0x00, 0x41, 0x36, 0x08, 0x00 },  // 7d }
  { 0x10, 0x08, 0x08, 0x10, 0x08 },  // 7e ~
  { 0x00, 0x00, 0x00, 0x00, 0x00 }   // 7f
};

void setup() {
  Serial.begin(115200);
}

void loop() {
  Serial.println("Prog startet");
  for (int i=0x20;i<=0x7f;i++) {
    Serial.print("  { ");
    for (int k=4;k>0;k--) {
      Serial.print("0x");
      char actchar = pgm_read_byte(&(charset[i-0x20][k]));
      byte actbyte = byte(actchar);
      byte mirror = mirrorbyte(actbyte);
      if (mirror>0xF) Serial.print(mirror,HEX);
      else {
        Serial.print("0");
        Serial.print(mirror,HEX);
      }
      Serial.print(", ");
    }
    char actchar = pgm_read_byte(&(charset[i-0x20][0]));
    byte actbyte = byte(actchar);
    byte mirror = mirrorbyte(actbyte);
    Serial.print("0x");
      if (mirror>0xF) Serial.print(mirror,HEX);
      else {
        Serial.print("0");
        Serial.print(mirror,HEX);
      }
    Serial.print(" },  // ");
    Serial.print(i,HEX);
    Serial.print(" ");
    Serial.write(i);
    Serial.print("\n");   
  }
delay(5000); 
}

byte mirrorbyte(byte actbyte) {     // special thanks to http://www.c-plusplus.de/forum/191237-full
  byte mirror = ((actbyte & 1) << 6)
            | ((actbyte & 2) << 4)
            | ((actbyte & 4) << 2)
            | ((actbyte & 8) << 0)
            | ((actbyte & 16) >> 2)
            | ((actbyte & 32) >> 4)
            | ((actbyte & 64) >> 6);
  return mirror;
}
Immerhin kann ich jetzt mit meinem Laser schon mal einzelne Zeichen darstellen. Hier mal 2 Fotos. Next step ist jetzt eine Laufschrift zu programmieren.
Die auf dem Foto zu sehende Ziffer ist ca. 7 cm hoch und die Projektionsfläche ca. 1,20 m entfernt.

Gruß
Reinhard
165  International / Deutsch / Re: DAYTIME Dienste Deutschland on: May 12, 2013, 01:01:06 pm
Hallo,
ntp-Dienste geben immer UTC zurück. Da wir momentan Sommerzeit haben ist die Differenz +2 Stunden (sonst +1 Stunde).
Pages: 1 ... 9 10 [11] 12 13 ... 33