Show Posts
Pages: 1 ... 86 87 [88] 89 90 ... 155
1306  Community / Exhibition / Gallery / Re: Navigation Calculations for Arduino GPS on: November 06, 2012, 10:42:30 am
I saw a road grader with a device mounted atop a pole attached to the blade.
What device would they be using that gives height accuracy to I suppose half an inch?

They add a laser when they want that accuracy.

http://www.topconpositioning.com/products/machine-control/3d/3d-millimeter-gps
1307  Using Arduino / Motors, Mechanics, and Power / Re: Cheapest source for rubber tracked robot on: November 05, 2012, 06:17:55 pm
You really don't have many options; there are rubber track manufacturers, but they are generally meant for heavy equipment and even the smallest would be too large for your needs (ie, small ride-on excavators and dozers). Another possibility, but still likely too large, are tracks meant for snowmobiles (also called snow machines).

Also snow blower tracks: http://www.build.com/ariens-72600500-track-drive-assembly/p2058533?source=gba_2058533
1308  Using Arduino / Sensors / Re: temperature sensor for Negative temperatures on: November 04, 2012, 10:10:26 am
The datasheet states -55C to 100C, but only .75C accuracy between -55C and 0C.
1309  Using Arduino / Sensors / Re: Laser Height Difference Sensor on: November 04, 2012, 12:02:51 am
Are you describing a laser receiver as would be used by a land surveyor? Laser targets of that type are only ~5cm high and don't have much granularity; I'm assuming that they have a row of individual sensors.
1310  Using Arduino / Sensors / Re: Noisey Analog photoresistor read on: November 03, 2012, 09:29:56 am
I would guess that the photoresistor is fast enough to be affected by the PWM of the LEDs. Try increasing the PWM rates.

http://arduino.cc/en/Tutorial/SecretsOfArduinoPWM
http://www.arduino.cc/playground/Main/TimerPWMCheatsheet

The hardware solution would be to add a capacitor between the anode of the LED and GND to smooth out the current.
1311  Using Arduino / LEDs and Multiplexing / Re: Arduino Tlc5940 daisy chain on: November 03, 2012, 09:10:03 am
Quote
All the options for the library are located in tlc_config.h, including NUM_TLCS, what pins to use, and the PWM period. After changing tlc_config.h, be sure to delete the Tlc5940.o file in the library folder to save the changes.

Did you follow those instructions?

".o", object files, are compiled pieces of the program and can be deleted any time between compiles because they will be rebuilt. They're telling you to delete the compiled .o file so it will be recompiled with the new changes... although I didn't realize that was necessary (should be automatic?).
1312  Using Arduino / Project Guidance / Re: ATtiny in a bottle on: November 02, 2012, 08:09:54 pm
So what's stopping you from getting started with your project? What's your question?
1313  Using Arduino / Project Guidance / Re: Information for a rover on: November 02, 2012, 07:37:44 pm
For the Raspberry Pi, which is Linux-based, anything computer vision related you'd want to go to the OpenCV documentation and forums. It's not "obstacle avoidance software" but rather a set of software routines to simplify interfacing with a camera and performing the image manipulation algorithms common for computer vision.

If you're looking for a simple technique I'd suggest a line-generating laser mounted above your camera and pointed at the floor about a meter ahead of the robot. Any obstacles will show up with a red line on them, and it's relatively straightforward picking out that red line from the image.

Roborealm is good software for this sort of thing, but it's Windows-based. Still worth looking at for ideas.
1314  Using Arduino / General Electronics / Re: TLC5916 logic power consumption on: November 02, 2012, 07:02:37 pm
6-24ma depending on the value of Rext. See page 10, the bottom of the chart, the value IDD.
1315  Using Arduino / Project Guidance / Re: Yet Another Aquarium Monitor on: November 02, 2012, 01:34:18 am
http://www.dfrobot.com/index.php?route=product/product&path=53_130&product_id=240

It's normal for a graphic displays to require you blank areas of the screen you're going to re-draw. Your headers will be safe. Also, writing text will do both of setting pixels on and off so overwriting existing text will work properly as well.
1316  Using Arduino / Project Guidance / Re: Basic info about a LED PWM "dimmer" circuit at ~3amps on: November 02, 2012, 01:21:49 am
My completely inexperienced thought process was that I would need some kind of 5v voltage regulator capable of handling like 4Amps (since I imagine the $4 wall-wart PSu from ebay is not regulated)...

FWIW, nowadays you can safely assume that all power supplies are "regulated".
1317  Using Arduino / Project Guidance / Re: Detecting each of up to 16 different things on: November 02, 2012, 01:11:18 am
I have toyed with the idea of a self made barcode stuck to the underside of each wagon to identify it and reading this with an IR LED and detector, but don't know how to detect the start of the read cycle and how to control the timing of reading each bar. Although the speed will be quite slow, it may not be constant.

Assuming you've rigged up your IR reflectance sensor right (and that's a big assumption), it should trigger low when the white label of the barcode starts as hopefully the barcodes are the only reflective thing passing over the sensor.

Design your barcode with a black line three units wide in the front. Using pulseIn() you can measure the time it takes for the bar to pass over the sensor and now you've got your reference time. The remaining bars in your barcode are then either two or one unit wide and comparing those times to your reference you know if you've got a binary one or zero.
1318  Using Arduino / LEDs and Multiplexing / Re: 64 LEDs with 4 TLC5926 on: November 02, 2012, 12:53:15 am
Ok this makes sense to me thanks.  I'm having trouble (due to my lack of coding knowledge) how to represent this in the sketch and data array.  Ive tried to control just on of the shift registers with the shiftout func but that seems to only support 8bit byte not a 16 bit byte.  How do I send the 16 LED states to just on register using spi?

Just shiftOut() or SPI.transfer() one byte at a time as many times as you need. Shift registers don't care if you're sending 8 bits, 5 bits, or 1 bit at a time.

Your code example is a little unperfect; really you should only be pulling the SS pin (or the LE "latch enable" pin, as TI calls it) low once, then shifting out all of your data, then bringing the LE pin high again -- "latching" the data:

Code:
digitalWrite (SS, LOW);
for(x=0; x<8; x++) {
     shiftOut(dataPin, clockPin, dataArray[x]);
}
digitalWrite (SS, HIGH);

Note that the SPI library is an interface to the hardware SPI pins and requires you use those pins; it's like a device driver. The shiftOut() function is a software implementation of SPI. While it's a little slower ("slow" being measured in millionths of a second) it's probably what you want to use.
1319  Using Arduino / LEDs and Multiplexing / Re: 64 LEDs with 4 TLC5926 on: November 01, 2012, 04:57:29 pm
00000001 (decimal 1) multiplied by 2 equals 00000010 (decimal 2). Another example, 00001100 (decimal 12) multipled by 2 equals 00011000 (decimal 24). In other words, to get the bits to shift to the left you need to multiply them by 2.

The only trick is that when a number is 128 or greater (10000000) that if you multiply it by 2 then the 1 will fall off the end. In your case you have to make sure that if (dataArray(x) >= 128) that dataArray(x + 1) has 1 added to it before multiplying dataArray(x) by 2 so that 1 is not lost.

To make your LEDs spin in the other direction you have to divide the values by 2. To prevent 1's from falling off the end you have to check if (dataArray(x) % 2 == 1).

To combine two 8 bits values into a 16 bit value multiply one by 256 (that's multiplying it by 2 eight times) and add it to the other.
1320  Using Arduino / Motors, Mechanics, and Power / Re: Servo Help on: October 31, 2012, 12:31:11 am
how does the refresh function in the servo library work?

"refresh" is used with the SoftwareServo library; you're using the Servo library and the "refresh" calls occur automatically.

When you get a deeper understanding of how timers work you might need to use the SoftwareServo library but until then just stay away from it smiley-wink
Pages: 1 ... 86 87 [88] 89 90 ... 155