Folge dem Video um zu sehen, wie unsere Website als Web-App auf dem Startbildschirm installiert werden kann.
Anmerkung: Diese Funktion ist in einigen Browsern möglicherweise nicht verfügbar.
In eigener Sache!
Liebe Mitglieder, liebe Besucher und Gäste
ich weiß, es ist ein leidiges Thema, aber ich muss es ansprechen: Werbung, Werbeblocker und Finanzierung des Forums.
Bitte hier weiterlesen ...
Was für Magnetventile wären denn gut bzw. welche und wieviele benutzt du?
Nur ins Blaue: Miss mal alle Spannungsnetze auf den Boards nach, hört sich danach an, als ob da eine Spannung fehlt...Hallo,
Kann mir jemand von euch einen Tip geben?
... will ich das ganze über die Droplet-Software von Stefan ansteuern.
/*
CrazyMachine-Testprogramm
*/
#include <LiquidCrystal.h> // Bibliothek für die Steuerung des LCD einbinden
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
// Startet das LCD und zeigt das Bootlogo
void lcdInit() {
lcd.begin(16,2); // LCD initialisieren
lcd.print("cazyMachine-Test");
delay(2000);
lcd.clear(); // Display löschen
}
// Gibt Zahlen in der zweiten Zeile des LCD aus
void lcd_print_numerical(unsigned long numerical_value) {
lcd.clear();
lcd.setCursor(0,1);
lcd.print(numerical_value); // aktuelle Zahl ausgeben
}
int knopfwert_auslesen() {
int messwert = analogRead(A7);
lcd_print_numerical(messwert);
delay(1000);
return messwert;
}
int sensor_1_auslesen() {
int messwert = analogRead(A6);
lcd_print_numerical(messwert);
delay(1000);
return messwert;
}
int sensor_2_auslesen() {
int messwert = analogRead(A5);
lcd_print_numerical(messwert);
delay(1000);
return messwert;
}
void setup() {
lcdInit(); // LCD Initialisieren
// initialize the digital pin as an output.
// Pin 13 has an LED connected on most Arduino boards:
pinMode(3, OUTPUT); //Magnetventil 1
pinMode(2, OUTPUT); //Magnetventil 2
pinMode(11, OUTPUT); //Magnetventil 3
pinMode(13, OUTPUT); //Focus
pinMode(12, OUTPUT); //Auslöser
pinMode(A2, OUTPUT); //Blitz 1
pinMode(A3, OUTPUT); //Blitz 2
pinMode(A4, OUTPUT); //Blitz 3
pinMode(A7, INPUT); //Tasten
}
void loop() {
knopfwert_auslesen();
delay(1000);
sensor_1_auslesen();
delay(1000);
sensor_2_auslesen();
delay(1000);
digitalWrite(3, HIGH); // set the MV 1 on
delay(50); // wait for a time
digitalWrite(3, LOW); // set the MV 1 off
delay(500); // wait for a time
digitalWrite(2, HIGH); // set the MV 2 on
delay(50); // wait for a time
digitalWrite(2, LOW); // set the MV 2 off
delay (200);
digitalWrite(2, HIGH); // set the MV 2 on
delay(50); // wait for a time
digitalWrite(2, LOW); // set the MV 2 off
delay(500); // wait for a time
digitalWrite(11, HIGH); // set the MV 3 on
delay(50); // wait for a time
digitalWrite(11, LOW); // set the MV 3 off
delay (200);
digitalWrite(11, HIGH); // set the MV 3 on
delay(50); // wait for a time
digitalWrite(11, LOW); // set the MV 3 off
delay (200);
digitalWrite(11, HIGH); // set the MV 3 on
delay(50); // wait for a time
digitalWrite(11, LOW); // set the MV 3 off
delay(500); // wait for a time
digitalWrite(13, HIGH); // set the Focus-Pin on
delay(50); // wait for a time
digitalWrite(13, LOW); // set the Focus-Pin off
delay(500); // wait for a time
digitalWrite(12, HIGH); // set the Shutter-Pin on
delay(100); // wait for a time
digitalWrite(12, LOW); // set the Shutter-Pin off
delay(500); // wait for a time
digitalWrite(A2, HIGH); // set the Flash 1-Pin on
delay(10); // wait for a time
digitalWrite(A2, LOW); // set the Flash 1-Pin off
delay(500); // wait for a time
digitalWrite(A3, HIGH); // set the Flash 2-Pin on
delay(10); // wait for a time
digitalWrite(A3, LOW); // set the Flash 2-Pin off
delay(500); // wait for a time
digitalWrite(A4, HIGH); // set the Flash 3-Pin on
delay(10); // wait for a time
digitalWrite(A4, LOW); // set the Flash 3-Pin off
}
Verwenden kannst Du sie schon, allerdings wirst Du Probleme haben, Dich ohne visuelle Rückmeldung durch die Menüs zu navigieren.
Aber Ralf hat doch auf seine Platine eigentlich ein Display gebastelt. Die andere Version ist nicht fürs Nano sondern fürs Uno gedacht.
char deviceMapping[DEVICE_NUMBERS] = { 3, 2, 11, A2, 12, A3, A4, 13, 1, 4, 5 };
/*******************************************************************************
* Project: Droplet - Toolkit for Liquid Art Photographers
* Copyright (C) 2012 Stefan Brenner
*
* This file is part of Droplet.
*
* Droplet is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Droplet is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Droplet. If not, see <http://www.gnu.org/licenses/>.
*******************************************************************************/
//+++++PIN-BELEGUNG AN DIE PLATINE FÜR NANO ANGEPASST+++++
#include "logging.h"
#include "protocol.h"
#include "droplet.h"
#define BOUD_RATE 9600
#define MAX_INPUT_SIZE 50 // how many memory can we use one the different arduino devices?
// 1 2 3 4 5 6 7 8 9 10 11 12, 13
char deviceMapping[DEVICE_NUMBERS] = { 3, 2, 11, A2, 12, A3, A4, 13, 1, 4, 5 };
/*
* setup stuff befor we start our main loop
*/
void setup() {
// start serial communication
Serial.begin(BOUD_RATE);
// setup pin modes
for(int i = 0; i < DEVICE_NUMBERS; i++) {
pinMode(deviceMapping[i], OUTPUT);
}
}
/*
* entry point
*/
void loop() {
// nothing to do here
}
char input[MAX_INPUT_SIZE];
int count = 0;
void serialEvent() {
while (Serial.available()) {
// get the new byte:
char inChar = (char) Serial.read();
// TODO brenner: consume input byte by byte
if (inChar == '\n') {
input[count] = '\0';
logging(DEBUG, input);
// TODO process byte by byte to prevent serial buffer overflow
processCommand(input);
count = 0;
// TODO send received message next can come
} else {
// add it to the inputString:
input[count] = inChar;
count++;
}
}
}
Hallo zusammen,
in Droplet kann man in der Geraetesteuerung die Pin-Belegung direkt bearbeiten. Somit braucht man auch keine unnoetigen Geraete hinzufuegen. (siehe Attachment)
Das jemand die Analogen Pins verwendet, damit habe ich nicht gerechnet ;-) Ich werde ein entsprechendes Mapping einbauen.
Hab nun mit Anpassung von Ralf einen Versuch gestartet.
Was jetzt klappt, ist das Ansteuern aller drei MV, des Kamerausganges (1fach derzeit) und teilweise der Blitze.