my robotic nut roaster

Hi. I roast nuts. I have spent some time making a nut roaster. I have some machinist skills and some electric but limited programming
I have two stepper motors.
One will rotate the paddles 360 to stir the bowl of nuts
one will turn a 1:4 ratio gear to lift the arm thru 90 degrees to allow enough clearance to remove of the bowl of nuts
I have machined all the hardware
I can make the paddle stepper turn 360 degrees
I have spent some time and money on this and it will be a commercial machine for my very small business.
I realise that programming even one axis to move thru 90 degrees, without crashing, is beyond me, i have no programming background and i also cant spend 3 months learning. I have tried, trust me, i have tried.
can any one help me?
If you are in australia I can offer lots of very nice caramel macadamias. Any where else I can offer lots of very good Karma
Serious request, any links, thoughts, sketches or encouragement appreciated
Michael@theworldsbestnuts.com.au

Post some photographs, links to the details of stepper motors and driver boards you are using, a schematic wiring diagram (hand drawn is ok), and any code you have, even if not working correctly (in which case describe what it actually does and what you want it to do, not just "it doesn't work" or "it crashes"). Read the "read this" post at the top of the forum section to find out how to post pics & code.

Also not a good idea to post your email address like that in the forum. I would remove it, or at least give it in "at"/"dot" form so that only a real human can figure it out.

//MODERATOR. If this post is against the rules please feel free to delete this.
I was planning on a TB6560 driver board with a PWM board from china to turn the paddle. It only goes on and off and around. I have a Hbridge l2938 driver for the 90 degree arm raising stepper. Again, just EBAY chinese modules. I have a small stepper that has enough torgue to raise the arm (4:1 gearing)
I can make all the motors turn and stop, using arduino cut and paste. I will post some pictures ASAP,( i made some nice stuff)
I am really looking for someone to hold my hand here. I hope thats not against Forum rules. Hopefully someone in australia??
I need this done fast and its outside my comfort zone. I have done the welding and machining and the calculations but i cant code. I am 52 and its a steep curve.I think if you were into this stuff it would be easy. I have a couple of other small bells and whistles to add, its a one off machine, just for my personal use.
happy to discuss compensation
good call on email address

Well, I'm on the opposite side of the world, as opposed to just down the road (Oz is a tiny island, right?).

But I'll leave you with a couple of questions. Why are you using stepper motors? For a stirring paddle, you don't need the accuracy, speed & directional control of a stepper, just a DC motor with a gearbox and a MOSFET to switch it on/off. For the arm raising, I would have thought a linear actuator would have been the thing.

To ask the moderators to move your post to the "Gigs & Collaborations" forum section, click the "report to moderator" link under your initial post and request them to move the whole thread.

Does the arduino control whatever provides the heat to roast the nuts too?

A steeper motor moves one step for every pulse you send it - look at the stepper library. How many steps/rev are your motors?

It would be useful to have a means of measuring when you've got to a reference point eg with a microswitch

Allan.

no. the roaster is gas.
pictures tomorrow.
i chose a stepper because in used a chain drive to keep motor from heat and for torque.
The 360 degree stepper is no problem. I got that covered
I am lowering the arm into a $500 copper bowl. I cant afford it to crash
Its at a market, i want it to be something of a spectacle. attract customers
Imagine:
500ml water fills bowl from copper pipe
arm slowly lowers thru 90 degrees
paddles at the end of arm spin 360 degrees
and then
short spurt of water
arm stops
arm rises

It sounds like a state machine would work well here.

How long do the paddles rotate? Is there a start button to kick things off or should the system start doing its thing at power up? Emergency stop?

And to repeat Allanhurst's question, do you have any hardware to tell you what position the arm is in? I'd like to have an indication for both fully up & fully down.

i chose a stepper because in used a chain drive to keep motor from heat and for torque.
The 360 degree stepper is no problem. I got that covered

The OP does not understand the differences, use cases, advantages and disadvantages of stepper Vs servo Vs DC motors. Maybe if someone from Australia could explain that to them...

bullpeters:
I can make all the motors turn and stop, using arduino cut and paste. I will post some pictures ASAP,( i made some nice stuff)

Sounds like you are half way there. There doesn't seem to be any complicated sequencing involved. Now you have the motors, I would keep them.

However, you really need end-stop switches on the arm, preferably a physical limit to stop the arm crashing. A nice thing about steppers is that you can use a physical stop, and the steppers will stall on it. A disadvantage with steppers is that if they lose power, the arm will fall under gravity.

Also, you may have this already, an emergency stop switch to cut power.

Edit; here is a quick sketch adapted from an example code for AccelStepper :

#include "Arduino.h"

#include "AccelStepper.h"

// Define a stepper and the pins it will use

AccelStepper stepper_arm(AccelStepper::DRIVER, 2, 5);

AccelStepper stepper_stirrer(AccelStepper::DRIVER, 3, 6);

bool run;

//The setup function is called once at startup of the sketch
void setup()
{
  pinMode (13, OUTPUT);

  // set ENABLE low to enable drivers
  pinMode (8, OUTPUT);
  digitalWrite (8, 0);

  // Change these to suit your stepper
  stepper_arm.setMaxSpeed(1000);
  stepper_arm.setAcceleration(40);

  stepper_stirrer.setMaxSpeed(4000);
  stepper_stirrer.setAcceleration(1000);

  run = true;
}

// The loop function is called in an endless loop
void loop()
{
  if (run)
  {
    // move arm down
    stepper_arm.moveTo(100);

    while (stepper_arm.distanceToGo() != 0)
      stepper_arm.run();

    delay (1000);

    // stir
    stepper_stirrer.move(4000);

    while (stepper_stirrer.distanceToGo() != 0)
      stepper_stirrer.run();

    delay (1000);

    // move arm up
    stepper_arm.moveTo(0);

    while (stepper_arm.distanceToGo() != 0)
      stepper_arm.run();


    run = false;

  }
}

You'll need to adjust pin numbers, number of steps etc according to your hardware. Steppers are often 1.8 deg, which is 200 steps/revolution if the driver is working in full step mode. I haven't added any endstop switches, those are simple enough to add.

bobcousins
thank you
thank you
Its all i need
i believe i can find a way to make this work
i just needed the skeleton
if your in canberra australia, PM and get some nuts
thanks

just one more question, i am going to find out tomorrow when the post arrives, but the accel.stepper library suggests a driver based on 3967 driver chip.
I have TB6560 chip
It seems similar in that it uses 2 wires instead of a H-bridge using 4
I am guessing it will work but any info is good
B

I used A4983 modules, the TB6560 is very similar, it has STEP/DIR inputs although Toshiba call them CLK and CW/CCW, on modules may be named PUL and DIR.

If I'm ever in Canberra I will drop by!