Go Down

Topic: Benutzeroberfläche ind Deutsch für arduino 0021 (Read 8161 times) previous topic - next topic

fdietsch

Sieht hübsch aus . Muß mich d erst mal reinlesen. Benutzen die normale Regler ? Mit normalen servoimpulsen? denke die sind zu langsam?
Gestern ist mein Päckchen angekommen. Hab heute erst mal in der Wühlkiste gekramt 7 LED gefunden ein Poti und ein Gyro. Das hab ich mir fix mal aufe eine Lochrasterkarte gepackt um den Umgang mit der Technik  zu üben.

Dabei hab ich mal folgenes getippt:


//Falkopter Ansteuerung von LED auf den Ausgängen 6 bis 12 in Abhängigkeit von
//der Beschleunigung des Gyro Sensors (Drehung)

int sensorPin = A0;    // GYRO
int sensPin = A2;  //Poti für Empfindlichkeit
int ledPin = 13;      // select the pin for the LED
int sensorValue = 0;  // variable für sensorwerte
int sens = 0;  //Wert der Empfindlichkeit
int cs = 0; // zwischenvariable für Mittelberechung
int center = 0;   // Mittelstellung

void setup() {  
 for (int s = 6; s < 14; s++){
    pinMode(s, OUTPUT);
}
 // Nullage ermitteln dabei nicht bewegen bis led 13 aus geht
 digitalWrite(13, HIGH);
 for (int cx = 0; cx < 21; cx++){
   sensorValue = analogRead(0);
   cs = cs + sensorValue;
 }
 digitalWrite(13, LOW);
 center = cs/20;
}
void loop() {
 sens = analogRead(2);
 sens = sens/10;
 sensorValue = analogRead(0);

 if (sensorValue <center-sens) digitalWrite(8, HIGH);
 if (sensorValue <center-2*sens) digitalWrite(7, HIGH);
 if (sensorValue <center-4*sens) digitalWrite(6, HIGH);
 if (sensorValue >center-sens);
 (sensorValue <center+sens);
 digitalWrite(9, HIGH);
 if (sensorValue >center+sens) digitalWrite(10, HIGH);
 if (sensorValue >center+2*sens) digitalWrite(11, HIGH);
 if (sensorValue >center+4*sens) digitalWrite(12, HIGH);
 delay (50);
 digitalWrite(13, HIGH);
 for (int s = 6; s < 14; s++){
   digitalWrite(s, LOW);

 }



}


Dann habe ich noch ein hin und her laufendes licht gebaut.
//Falkopter Lauflicht3
int sensorPin = A2;    // select the input pin for the potentiometer
int sensorValue = 0;  // variable to store the value coming from the sensor
void setup() {                
 pinMode(6, OUTPUT);
 pinMode(7, OUTPUT);
 pinMode(8, OUTPUT);
 pinMode(9, OUTPUT);
 pinMode(10, OUTPUT);
 pinMode(11, OUTPUT);
 pinMode(12, OUTPUT);
}
void loop() {

 for (int i=6; i <= 12; i++){
   digitalWrite(i, HIGH);   // set the LED on
   sensorValue = analogRead(sensorPin);
   delay(sensorValue);
   digitalWrite(i, LOW);    // set the LED off
 }
 for (int i=12; i >= 6; i--){
   digitalWrite(i, HIGH);   // set the LED on
   sensorValue = analogRead(sensorPin);
   delay(sensorValue);
   digitalWrite(i, LOW);    // set the LED off
 }
}

Dazu habe ich gliech mal ne Frage.
Für die Positionsbeleuchtung eine Modellheli möchte ich die LED steuern .
Eine Eingangsspannung habe  18-25,2V die wollte ich mit einem
Schaltregler als Betriebsspannung für die Elektronik  runtersetzen.
Dann wollte ich über einen Spannungsteiler die  Eingangsspannung mit einem Analogeingang  messen und dementsprechend ein Tastverhältnis ausrechnen daß die LED ohne Vorwiederstand gepulst werden. Ist die Frage ob das ein richtiger Schaltregler mit Drossel weren muß oder ob das Pulsen mit Transistor ausreicht.
Mit dem Lauflicht (dann nur in eine Richtung) will ich eine Rundumleuchte simulieren. Gleichzeitig sollen 3 LED einfach leuchten ( gepulst) und eine Blinken , während des blinken natürlich auch gepulst. ;)
jetzt müssten die programmchen eigentlich paralell ablaufen wie mache ich das ? :)

fdietsch

So hab mal ein Servo angeschlossen das von poti und gyro gesteuert wird.

Quote
// Controlling a servo position using a potentiometer (variable resistor) + Gyro
// by Michal Rinott <http://people.interaction-ivrea.it/m.rinott>

#include <Servo.h>

Servo myservo;  // create servo object to control a servo
int gypin = 0; // Gyro am anschluß analog 0
int potpin = 2;  // analog pin used to connect the potentiometer
int val;    // variable to read the value from the analog pin
int gyr; //variable gyro
int mix;  // variable mix
void setup()
{
 myservo.attach(2);  // attaches the servo on pin 2 to the servo object
}

void loop()
{
 val = analogRead(potpin);            // reads the value of the potentiometer (value between 0 and 1023)
 gyr = analogRead(gypin);
 mix = (gyr+val)/2;     //durchschnitt berechnen
 mix = map(mix, 0, 1023, 0, 179);     // scale it to use it with the servo (value between 0 and 180)
 myservo.write(mix);                  // sets the servo position according to the scaled value
 delay(20);                           // waits for the servo to get there
}


:)

Cat_

#17
Dec 20, 2010, 01:50 pm Last Edit: Dec 20, 2010, 01:51 pm by Cat_ Reason: 1
Stundenblume hat geschrieben:

Quote
Nee, diesen hier. Es ist eine wahre Freude das Ding aufzubauen! So etwas komplettes und durchdachtes habe ich selten gesehen!


Wie sind deine Erfahrungen bezüglich ArduCopter Quad?
Wie gut Funktioniert das GPS?
Waypoint fliegen?
Waypoint Begrenzungen?

Sorry fürs OT.

Gruss Cad

fdietsch

OT möchte ich auch wissen .
Wie fliegt sich der arducopter im Vergleich zum MK ?
In wieweit sind da die sceche verfügbar?

stundenblume

Hi,

aus vorweihnachtlichen Zeitmangel steht er noch ungeflogen zu hause. Die Motorsteller sind offensichtlich schnell genug. Es gibt ja auch genug Projekte in denen diese eingesetzt werden. GPS PH ist erst am Sonntag implementiert worden. Wegpunkte folgen die nächste Zeit. Den sehr gut dokumentierten und übersichtlichen Code gibt es hier.
Ich bin auch schon ganz heiß ihn endlich zu starten. Der Aufbau funktioniert praktisch ohne Werkzeug an einem Tag. Es muß nur die Verteilerplatine der Motoren gelötet werden. Es ist absolut alles dabei. Muttern, Schrauben, Schrumpfschlauch, Kabelbinder, ne Antennenhalterung, ...
Der Code ist ebenfalls genial. Es werden sämtliche GPS Protokolle unterstützt, vier, sechs, oder acht Motoren, zwischen + & x kann über ein Mäuseklavier umgeschaltet werden...


Gruß

Sebastian

Megaionstorm

Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/

stundenblume

Da verstehe ich den Zusammenhang jetzt nicht...

Megaionstorm

#22
Dec 21, 2010, 04:06 pm Last Edit: Dec 21, 2010, 04:21 pm by Megaionstorm Reason: 1
Quote
Benutzeroberfläche ind Deutsch für arduino 0021


Quote
gibt es für das Arduino 0021 eine Möglichkeit die Benutzeroberfläche in DE zu bekommen?


Ein Hex-Editor, damit kann man die Execute-Datei bearbeiten !
Zumindest bedingt !
Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/

saw0

Wenn sie wie in unserem Fall mit einem executable packer gepackt ist, wohl eher nicht...

Megaionstorm

Von Executable-Packern habe ich bisher noch nichts gehört gehabt !
Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/


Go Up