Paso 3: Programación y pruebas
Para conseguirlo ya está en marcha.
Arduino:
Opción 1: (descargar y descomprimir)
- Descargar el archivo (07-POTB-Arduino-SerialSwitch.zip) desde abajo y un zip en la carpeta de Arduino. (por defecto mis Documents\Arduino\)
- Abrir en el entorno de desarrollo Arduino y descargarla a tu Arduino.
Opción 2: (copiar y pegar)
- Copia el texto del programa Arduino (Below (Apéndice 1)
- Abrir el entorno de desarrollo Arduino. Pegar el texto y subirlo a la placa.
Programa de tratamiento de
Opción 1: Descargar exe
- Descargue el archivo zip adjunto (procesamiento de POTB 07 interruptor Watcher (windows exe) .zip).
- Lo descomprimimos en cualquier lugar en su computadora.
- Ejecute _POTB_SwitchWatcher.exe.
Opción 2: Descargar fuente de procesamiento
- Descargue el archivo zip adjunto (procesamiento de 07 POTB Swtch Watcher (fuente) .zip).
- Descomprimir en cualquier lugar en su computadora.
- Abra (_POTB_SwitchWatcher.pde) en el entorno de desarrollo de procesamiento y ejecutar y editar su contenido de corazones.
Para ejecutar
- Inicie el programa.
- Haga clic en el puerto Comm a que su Arduino está conectado.
- Reloj de que la marca spin mientras gira tuya.
Apéndice 1: Código de Arduino
/* * Potentiometer and Switch Box (POTB) - Serial Updater * For more details visit: http://www.oomlout.com/ * * Behaviour: Will feed the state of the 5 plugged in potentiometers and three switches to a connected PC every 100 ms. * * Wiring: Twist Potentiometer (01) - analog 1 * Shoulder Potentiometer (02) - analog 3 * Elbow Potentiometer (03) - analog 2 * Wrist Potentiometer (04) - analog 4 * Gripper Potentiometer (05) - analog 0 * Switch 1 - pin 02 * Switch 2 - pin 03 * Switch 3 - pin 04 * * License: This work is licenced under the Creative Commons * Attribution-Share Alike 3.0 Unported License. To * view a copy of this licence, visit * http://creativecommons.org/licenses/by-sa/3.0/ * or send a letter to Creative Commons, 171 Second * Street, Suite 300, San Francisco, California 94105, * USA. * */ //-------------------------------------------------------------------------//START OF POTENTIMETER BOX PREAMBLE//Defining constants corresponding to the pin each Potentiometer is plugged into //change to whatever you are using them for#define TWIST_POT 1 #define SHOULDER_POT 3 #define ELBOW_POT 2 #define WRIST_POT 4#define GRIPPER_POT 0 //Defining constants corresponding to the pin each Potentiometer is plugged into //change to whatever you are using them for#define SWITCH_1 2#define SWITCH_2 3#define SWITCH_3 4//Gets everything up and runningvoid setup() { Serial.begin(9600); //Starts the serial port potbSetup(); //sets the state of all neccesary //pins and adds servos to your sketch}//The main program loopvoid loop() { potbSendData(); //sends the current switch and potentiometer data delay(100); //waits 100 ms}//------------------------------------------------------------------------//START OF POTENTIOMETER AND SWITCH BOX (POTB) ROUTINES/* * sets up the appropriate digital inputs and outputs for your potentiometer * and switch box*/void potbSetup(){ pinMode(SWITCH_1, INPUT); //sets the switch one pin to input digitalWrite(SWITCH_1, HIGH); //turns on the internal pull up resistor //(this means it will read high when off and low when on pinMode(SWITCH_2, INPUT); //sets the switch one pin to input digitalWrite(SWITCH_2, HIGH); //turns on the internal pull up resistor //(this means it will read high when off and low when on pinMode(SWITCH_3, INPUT); //sets the switch one pin to input digitalWrite(SWITCH_3, HIGH); //turns on the internal pull up resistor //(this means it will read high when off and low when on }void potbSendData(){ Serial.print("POTB Data"); Serial.print("%SWITCH_1="); Serial.print(getSwitchData(SWITCH_1)); Serial.print(" %SWITCH_2="); Serial.print(getSwitchData(SWITCH_2)); Serial.print(" %SWITCH_3="); Serial.print(getSwitchData(SWITCH_3)); Serial.print(" %TWIST_POT="); Serial.print(getPotData(TWIST_POT)); Serial.print(" %SHOULDER_POT="); Serial.print(getPotData(SHOULDER_POT)); Serial.print(" %ELBOW_POT="); Serial.print(getPotData(ELBOW_POT)); Serial.print(" %WRIST_POT="); Serial.print(getPotData(WRIST_POT)); Serial.print(" %GRIPPER_POT="); Serial.print(getPotData(GRIPPER_POT)); Serial.print(" "); Serial.println();}int getPotData(int potNumber){ return analogRead(potNumber);}int getSwitchData(int switchNumber){ return digitalRead(switchNumber); } //END OF POTENTIOMETER AND SWITCH BOX (POTB) ROUTINES//---------------------------------------------------------------------------