Let's Make Robots!

Wild Thumper Basic Movement?

Hello!

 Ultimately I'd like to control my wild thumper from a python interface, over serial. As a very first step however I need to understand the code that comes with the controller. As part of that I'd like to modify the code so that the wild thumper will move forward continuously when turned on.

 If anyone is familiar with the code, could you suggest a bit of sample code that would tell the thumper to move forward? To be clear I don't need or want *any* outside control at this point. I just need to test if it will/can move forward and to understand the code. 

I tried adding the following right under the void loop(), but all I got was a faint clicking, as if a motor was just barely trying to move but wouldn't. 

 

analogWrite(RmotorA,1);

RightPWM=200;

analogWrite(RmotorB,RightPWM);

 

Thanks in advance and let me know if there is any other info I can supply to clarify what I'm trying to do.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

This worked perfectly! It actually gave me a lot of insight into the control flow of the system. I really appreciate your fast response! One step closer to fun with my thumper!

 

One other question. Is there an official wiki for the wild thumper? For novices it would be great if there were a getting started tutorial and I'd be happy to contribute to that as I go along if there is a wiki to edit. For example simple things like "Congratulations on purchasing a Wild Thumper, your life will be a lot easier if you ALSO have the following on hand:

A multimeter

Red/Black 18 gauge wire

Wirestrippers

etc.

I don't have an RC or electronics background and I think the thumper could be a great way to get people into the community, if the docs were a little bit more explicit. 

Thanks again, I appreciate your help and time!

Ultimately the wild thumper is just an arduino so most arduino resources apply

In a perfect world there would be, unfortunately I am already working 12 hours or more a day, almost every day just to produce new products. I not only design them mechanically, I must also draw schematics, write the sample code, write the instruction manual, help with the artwork on the box and market the new product.

I try to keep all help on LMR (usually in the component or more recently forum section) so that it is easier to find. If you had looked there first and asked your question there then it would be easier for others to find.

letsmakerobots.com/node/21598 or http://letsmakerobots.com/node/14156

The sample code comes configured to read the signals from a radio controlled receiver. If you go to the part of the code called RCmode() then you can see two variables, Leftspeed and Rightspeed.

 

  if (Mix==1)                                                 // Mixes speed and steering signals
  {
    Steer=Steer-1500;
    Leftspeed=Speed+Steer;
    Rightspeed=Speed-Steer;
  }
  else                                                        // Individual stick control
  {
    Leftspeed=Speed;
    Rightspeed=Steer;
  }

After this piece of code, just set them to whatever values you like between 255 and -255 with 0 being stop.

  Leftspeed=255;
  Rightspeed=255;
  
  Leftmode=2;
  Rightmode=2;
  if (Leftspeed>(Leftcenter+RCdeadband)) Leftmode=0;          // if left input is forward then set left mode to forward
  if (Rightspeed>(Rightcenter+RCdeadband)) Rightmode=0;       // if right input is forward then set right mode to forward

  LeftPWM=abs(Leftspeed-Leftcenter)*10/scale;                 // scale 1000-2000uS to 0-255
  LeftPWM=min(LeftPWM,255);                                   // set maximum limit 255

  RightPWM=abs(Rightspeed-Rightcenter)*10/scale;              // scale 1000-2000uS to 0-255
  RightPWM=min(RightPWM,255);                                 // set maximum limit 255
}

The code will then break these values down to speed (PWM) and direction. In my example, both motors are set to full speed forward regardless of the input from the RC receiver. This is the quickest way to modify the code so the robot just goes forward.

I am assuming the code you have is the original code that comes installed in the controller from the factory. You can download original code and manuals for DAGU products here: https://sites.google.com/site/daguproducts/

 

Thanks for the reply Bajdi! I'm using the basic code for the controller (http://dlnmh9ip6v2uc.cloudfront.net/datasheets/Robotics/Wild_Thumper_Controller.zip). If there is a simple bit of code to circumvent 90% of it and set the thumper into a continual forward motion, that would be ideal.

Please post the complete sketch you are using else we have to guess what is wrong...