Skip to main content

arduino

Example Button Code for the DollyShield

/*

  Example code for  DollyShield pushbutton reading
  For use with the Arduino IDE or libraries.
  (c) 2010 C.A. Church
  Licensed under GPLv3

*/

 // digital pin # for button
#define BT_PIN_D  14
 // range threshold
#define BT_THRESH 70
 // num buttons
#define BT_NUM    5

int buttons[5] = {70, 250, 450, 655, 830};

int bt_range[5][2];

void setup() {

 pinMode(BT_PIN_D, INPUT);
 digitalWrite(BT_PIN_D, HIGH);
 
 Serial.begin(19200);

   // setup pushbutton lookup table

 for (byte i = 0; i < BT_NUM; i++) {  
   bt_range[i][0] = buttons[i] - BT_THRESH;
   bt_range[i][1] = buttons[i] + BT_THRESH;
 }

}

void loop() {

 byte button = get_button();

 if( button ) {
    Serial.print("Pressed Button: ");
    Serial.println(button, DEC);
 }

 delay(200);

}

byte get_button() {

  // returns button pressed
  //  1-5 for pushbuttons
  //  0 for no button pressed

  // need analog pin # for analogRead

The DollyShield: Arduino Shield for Timelapse Motion Control

The DollyShield is an adaptation of the Arduino Motor Shield v3 that provides directional PWM control of two DC motors, at up to 1A of current each.  In addition to the motor drivers, it also provides a stereo plug with dual opto-coupled outputs for direct camera control, a 2x16 LCD, five user input buttons, and four auxilliary inputs or outputs through two stereo jacks.  It is designed to provide an inexpensive and easy-to-use interface for two-axis motion control integrated with a camera.

 

 

DollyShield v1.0 Front 

An OpenMoco Hardware Prototype

We're making progress with hardware kits that will soon (maybe early Q2 2010?) be available for purchase. The idea is to use laser-cut acrylic panels and mostly off-the-shelf hardware (there will only be a couple of custom circuit boards, and one gear has to be custom-bored) to provide simple kits for the DIY motion control enthusiast to build their own systems without heavy investment in tooling and without having to focus on all of the fundamentals. In such a world, you could create new software, or just get out and shoot without first buying expensive CNC machines, or have to figure out yet one more way to come up with that right gear ratio.

The idea is that these kits would trade a little sweat equity from the end-user for cost, providing a system capable of just about anything you can imagine at a fraction of some of the pre-built systems' cost.

OpenMoco TimeLapse Engine 0.81 Released

Version 0.81 of the OpenMoco Timelapse Engine is now available for download.

Changes in this release:

Engine Hardware

Engine Hardware

The OpenMoco Time-lapse engine is designed a minimal amount of hardware, using an easy circuit design that can be readily bread-boarded, or soldered to perf-board.

 

Schematic

The following schematic shows the basic layout of the circuit, with the arduino in the center, and the default pin connections to motors, camera, alt, etc.

 

Click on the thumbnail for a full-size image.

OpenMoco Time-Lapse Engine Circuit Diagram 

 

Parts List

To build the above circuit, you will need the following parts:

OpenMoco Time-Lapse Engine 0.8 Alpha Released

The first publicly available release of the OpenMoco time-lapse engine is now available.  Download it at the Software Download Page.

Documentation is incomplete, and there may be bugs, but stop on in, sign up for an account, and let us know what you think!

What's not done?

  • Further code optimization - several flags need to be rolled into single bytes
  • Complete documentation
  • ... and probably another hundred things I can't remember!

OpenMoco Time-Lapse Engine


Introduction

The OpenMoco Time-Lapse Engine (OMTLE) is designed to run on an Arduino microcontroller with the Atmega328P Chipset.  It is provided as a C++ sketch to be uploaded via the Arduino IDE.  It can be easily ported to other microcontroller platforms as well.

Syndicate content