go_away

Recent Posts

Pages: 1 2 3 ... 10
1
Axon series: What is this thing?
I am beginning to figure out the AVR Studio 4 front end.  8) To create a program,
you have to do this:
Open a project, and give it a name.
Then, you must select what kind of program, Atmel AVR assembly, or AVR GCC.
( I selected AVR GCC)
The next screen (left part) wants to know what Debug Platform you would like to
use. I chose AVR Simulator. (other selections are AVR II Simulator, AVR dragon, AVR ONE!, etc)
On that screen, to your right, it asks what device you are going to use. I selected
Atmega640, (the Axon II processor).
Once I clicked finish, it took me to at least 4 seperate screens, with a GUI type of interface on the
right, the source access in the middle, error report screen on the bottom, and files used on the left.
I guess, when a program is ran, you can step through the code one level at the time, and see what
registers are used, affected, or otherwise. Still can not locate the iopin.h file.... :'(
2
Mechanics and Construction / Re: have you used Nachi 8600-A
« Last post by mklrobo on Today at 05:06:13 AM »
 :) Hello!
I tried to google the device, but only found vauge descriptions.
Could you provide more info?
Questions: low amperage on weld? Intermittant operation?
Keep me posted...... ;)
3
Electronics / Re: Any suggestions for choosing servos
« Last post by ocservo on Yesterday at 07:35:19 PM »
Typically it would be undesirable to connect servos in series and much more practical to wire them in parallel. However, I am sure there are special cases when it would be desirable to connect motors in series. A better explanation of what you are trying to achieve would help us provide the best recommendation for your application.

Please explain exactly what you are looking for when you say "servo". Technically a servo is just a motor with closed loop feedback. Below are a couple types of servos that may be what you're looking for.

Hobbyists are often most familiar with "RC servos" these typically have three wires (power, ground, and signal). For these servos the power and ground wires would be connected in parallel. The signal wire uses a pulse variable pulse length to control what position the servo should move to (there is lots of information about this on the web). if you are going to provide the same signal to several servos these could also be wired in parallel.

There are also Dynamixel servos which are specifically targeted at robotics (hobby level/not industrial). These servos have several wires (i'm not sure the exact pinout) and use a serial communication bus to transmit the control signal. This design allows the servos to be daisy chained (this is different from connecting the motors in series as they are still electrically connected in parallel). There may other brands that produce similar products but I have seen the Dynamixel ones before (never used them tho).
Anyway thanks u very much, but I will still make them connected in series in my way.
4
Mechanics and Construction / have you used Nachi 8600-A
« Last post by yssa22 on Yesterday at 06:28:42 PM »
Guys any familiar with this spot welding robot.. encountering some problems here.. help please, anyone??
5
Mechanics and Construction / Re: braking system suggestions
« Last post by mklrobo on Yesterday at 06:11:39 PM »
 :) Hello!
I would offer my opinion....
In stopping, there are techniques, such as
motor plugging. This reverses polarity(momentarily), which
causes the motor to stop immediately. This is used in industrial
purposes. This method may not be the best for your purposes.
electric clutches are an option. Or, a combination of electric clutches
and brakes.(The motors are detached from the load when braking
is engauged). You may want to consider the center of gravity for the robot,
because, if the robot is top heavy, the robot may topple over is stopped
immediately. Good luck!!!  ;D ;D ;D 
6
Mechanics and Construction / braking system suggestions
« Last post by LeftRite on Yesterday at 03:32:01 PM »
I am designing a robot that will carry a large load with the combined weight of around 144lbs. It will have to travel at around 17mph. My plan is to use brushed scooter motors on two wheels because of  price and availability.  I have considered large brushless rc motors, but I understand that they are more sensitive to stall loads.

This brings me to my question: I need this to robot to stop quickly and stay for up to 2 min. I'm not sure how fast motors can stop that much weight. My thought was it needed to have fast acting brakes.

 I wondered if anyone had any suggestions for implementing a fast motor/brakes combination.

Thanks
7
Misc / Re: Analyzing the Axon series: Coding, Contruction, and Contraptions
« Last post by mklrobo on Yesterday at 11:41:33 AM »
Axon series: What is this thing?
While looking through the Webbot Library, I tried to approach a simple
action first, turn on a pin, then turn off. That way, I could always check to
see if the pins worked, and have a practical code "snippet" to use and learn.
The categories found were; Displays, speech, header files, timers, Uart, buffers,
clock, PID, copy strings and math functions.
Also, I/O pin control, in which the following
example was use to turn on/off ONE pin;

#include "../iopin.h"

/******************************************************

   Set a port pin to high

******************************************************/
void pin_high(const IOPin* io){
   if(io){
      const IOPort* portDef = (const IOPort*)pgm_read_word(&io->port);
      PORT port = pgm_read_word(&portDef->port);
      PORT ddr = pgm_read_word(&portDef->ddr);
      PIN mask = pgm_read_byte(&io->pin);

      // make sure its an output
      if(_SFR_MEM8(ddr) & mask){
         CRITICAL_SECTION{
            // set the bit
            _SFR_MEM8(port) |= mask;
         }
         // Allow any output to be reflected on the input pin
         nop();
      }else{
         setError(PIN_SET_ON_INPUT);
      }
   }
 }

/******************************************************

   Set a port pin to low

******************************************************/
void pin_low(const IOPin* io){
   if(io){
      const IOPort* portDef = (const IOPort*)pgm_read_word(&io->port);
      PORT port = pgm_read_word(&portDef->port);
      PORT ddr = pgm_read_word(&portDef->ddr);
      PIN mask = pgm_read_byte(&io->pin);

      // make sure its an output
      if(_SFR_MEM8(ddr) & mask){
         CRITICAL_SECTION{
            // clear the bit
            _SFR_MEM8(port) &= ~mask;
         }
         // Allow any output to be reflected on the input pin
         nop();
      }else{
         setError(PIN_SET_ON_INPUT);
      }
   }
}

**************************
I do not know about you, but this code, was alot of code for one pin maniputation, for me. There must be an easier way to turn on one pin. ??? (maybe used as an object file for specific functions?)
****
I found this code, which takes a pulse in, and is more my speed... ;D
#include "../iopin.h"
#include "../clock.h"

TICK_COUNT pin_pulseIn(const IOPin* pin, boolean activeHigh){
   TICK_COUNT start;
   TICK_COUNT end;
   TICK_COUNT duration;

   pin_make_input(pin,FALSE);            // Switch pin to INPUT with no pull up
   while(pin_get(pin)==activeHigh);      // Loop until the the pin goes inactive
   while(pin_get(pin)!=activeHigh);      // Loop until the the pin goes active
   start = clockGetus();               // Get the start time
   while(pin_get(pin)==activeHigh);      // Loop until the the pin goes inactive
   end = clockGetus();                  // Get the end time

   duration = end - start;               // Get the duration in uS
   return duration;
}


Now, this is the code I can deal with! ;D I will try to use the simplest code I can to get the basics
working. The header file, iopin.h, may hold all the commands that may let me control the pins.  ;D ;D ;D
8
Software / Re: WinAVR atmega168p problem
« Last post by mklrobo on Yesterday at 10:00:14 AM »
 :) Hello!
Your request;
I am trying to program the atmega168p microcontroller with WinAVR, but I get an error that the atmega168p is not supported. I have searched a lot in google, but I couldn't find a solution.
When You use AVR Studio 4, you should select the product that you are going to program. If the product is
not in the list, you can not access the product. If it is, then there must be a bug in the programming software.
I will address this, and other questions in my posts in
the Misceallanous section; Analyzing the Axon: Coding, Construction, and Contraptions.
  ;D
9
Mechanics and Construction / Re: Two bolts, and you can make a simple pump
« Last post by mklrobo on Yesterday at 08:26:58 AM »
 8) The "Hydraulic Heart" of the robot may be less power
than expected. The cyclone piston is a great example of
unconventional engineering!  8) 8) 8)
10
Software / Re: ATMega RAM management
« Last post by mklrobo on Yesterday at 08:23:00 AM »
 :) good information! I will have to look into this!
Pages: 1 2 3 ... 10

Get Your Ad Here

data_list