Let's Make Robots!

28 pin Project Board (AXE020), Picaxe for dummies

AttachmentSize
axe020.pdf195.58 KB

Please note: The info on this page is about a board. However, things can be different depending on which chips you stick into the sockets of that board, and how these chips are programmed. Originally this page was written when the newest Picaxe 28 was 28X1. If you are using Picaxe 28X2 or later, you should be aware that depending on the programming that you do on these chips, the in's and out's can be set to differ from "standard setup", where we are dealing with in and out. In other words; This page's info on digital and analogue in and out is refering to the "Standard" setup of the Picaxe 28, 28A, 28X, and 28X1 versions.

Geek07Boy has made a great update, that you can find here


Ground!

Often you get something that you want to connect, and the documentation says connect this to "Ground", or any other name often used in random. It has many names, that are the same thing:

  • Ground
  • Usually "the black wire" if there is a red and a black
  • G
  • GND
  • -
  • 0
  • Vee
  • Vss
  • Negative Supply

- All the same!

This is simply where current goes to when it comes from the other pole on the battery (the positive, +).

When something can be connected to your board using "just a single wire", it allways also has to have a second wire, connected to this ground.

If you want to hook up to ground, you can use any of these connections on the board:

 


V

Also refered to in random as :

  • Positive supply
  • "the red wire"
  • +
  • Current
  • Power
  • VCC
  • V+
  • B+
  • VDD

Actually the reason for having a Microcontroller on a board is, that you should let the microcontroller control when you send current to something (turn it on or off).

However, quite often, you will need to feed peripherals with current (and ground, this goes unsaid), on top of what you send to it via the microcontroller.

Perhaps you are connecting a Sharp IR range finder, it has 3 wires: Black, White and Red. The black is Ground. The Red then will be V, to power the module, and the white will be a signal returning from the Sharp module to the microcontroller on your board.

Perhaps you want to control a Servo. That will also need a G and a V to power it´s circuit and its motor. And on top of this, it needs a pulse-signal from the microcontroller, the last wire - what color it may be on the perticular model.

The standard setup of the board looks like this, all these areas are V:

 

So - what´s with the V1 / V2?

Well, everything returns to ground. But it can come from different sources. And they can have different voltage.

This way you can power a servo with V2, while the pulses that signals to the servo where it should turn to, is from the Microcontroller that runs on V1. All to the same G.

This 28 pin Project Board has 2 options:

Standard: See illustration above. V1 & V2 are connected, resoult: There is only one V. As you may have read from the documentation: It is the little jumper in the corner that connects V1 & V2, and when it is on, there is only V & G on the board.

2 power supplies: See illustration below. Take off the jumper, and connect a seperate power-supply to V2 (and that power supplie's G to ground, goes unsaid from now ;) - and the board will have V1 to the circuits and inputs, V2 to power external stuff, and G for all of it.

That way you can feed the chips with 5V, and the motors with 12V that would otherwise kill the chips.

 

So if you hook up a board with 2 power-supplies, this is where you have current and ground:


.. What is left?

Only the interesting stuff! :)

Power they need, the peripherals.. But it is the inputs and outputs that are interesting.

None of the above connections can be controlled by the Microcontroller, and unless you burn something, the Microcontroller does not sense weather you connect something to these or not.

This is where the input's and outputs come into the picture:

These conect to the Microcontrollers legs. Quite often, for advanced useage, things can be altered; An input can be switched in mode, so that it is an output etc. But you will figure that out, this is just the basics, as things are wired in default:


A: The digital inputs:

Connect a switch to V1 and one of these. In the program editor you can then write (let's say you have connected to leg 4, there are 8 in this area)

If pin4 = 1 then

...


B: The analouge inputs

How much corrent from V1 (or another source not more powerfull then V1) comes to this pin?

Well - it is not a question i ask, but what the pin asks :)

The answer is then returned into a variable, example, pin 2 out of the 4 in this area:

readadc 2, b1

Now the variable b1 is a value between 0-255, depending on how much corrent from V1 (or another source not more powerfull then V1) comes to this pin.


C: The IR-area

This is a quite undocumented feature on the board! It is used if you want to use standard TV-remote control-protocols to send to your microcontroller.

You can hook up IR ins-and out to anything, to measure IR, for instance to see if something is near or far, or white or black.. but you will have to do with analouge levels of signal and similar, you will not be able to transmit "signals" that can be translated to numbers such as TV romotes does. Most IR remote controls use 38 KHz sub-carrier, and this area let´s you hook up to that quite simply. You should only use it for that!


D: The Serial communication

The square on the picture should perhaps include the Jackstick :) This is the serial connection used to program and more.

You can also use output- and digital input pins for serial connection, but the ones on D are hard-wired


E: Direct outputs from the picaxe

These should (only) be used if you are trying to communicate "chip to chip". I think this is called TTL-level, where you let the chips talk to each other via pulses. This should not be used to drive anything, but it should allways be used if you want your chip to talk to others, like in this example:

http://letsmakerobots.com/node/66


F: Output pins

These are what you should start with, IMHO: Connect a LED or something (Remember LED´s should turn the right way around) to one of these (other LED-leg to ground).. let´s say you connect to leg 3 out of the 8 in this area. Write:

high 3

to turn power on

low 3

to turn it off

Note that if you are using a motor controller, you should not use leg 4, 5, 6 and 7 for anything else!

These pins are also used for standard servo connection.

 


G: Motor connections A & B

The board is made for the typical applications, and one is where you want to control 2 motors, and being able to switch directions on them.

Of course if you only can turn things on or off, it can be hard to reverse a motor.

You can purchase a L293D motor controller - chip, and place it in here.

Then read the documentation for how to make output 4, 5, 6 and 7 control 2 way-drive of 2 motors connected to A & B outputs. (one motor to A and one to B, not 2 times A+B)

 


H: The reset switch

If you mount your board in a case or something, and would like to be able to remote-reset the Microcontroller, add a switch to this, press it and.. Hello? I remember nothing, let´s start all over!

 


 

Update: Elliot just wrote that you could use a better motor driver for the board. I have not had the chance to test it myself yet, but it sounds very interesting :)


Update II: psy has made a great documentation on the "Support Chips" that fits into the board.


 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
IR works really well for edge detection. So does a LED and LDR. Also you can go hardware and have a switch that is in the front of the robot. When it is pressed by sitting on the ground it is high and in safe mode. When it goes over an edge it doesn't put pressure on the switch and causes the pin to go low which = danger. You just have to keep checking the state of the pin to see if it is in safe or danger mode.

1 time use batteries have a higher voltage than 1.5, so actually six volts is accurate at the beginning of the battery life, but slowly goes down in voltage.

 
Not sure your servo and motor pins will work with that configuration,
 
From what I can remember the L293d (chip used to drive the motors) uses output pin 4, 5, 6, 7
So you cannot connect your servos there, you can only use pins 0,1,2,3 for servos.
 

How much voltage needed for a pair of simple robotic arm & how much the 28-pin board can support the maximun voltage?

Thanks

I think we are going to need a lot more detail to answer your question. I strongly suggest you post a new forum question rather than try to answer it on this post.

Ok, so the diagrams above aren't perfectly clear, unless I am missing something. If I have a second power supply connected, will the motors I have connected to the motor control (the four pins, that allow forwards and reverse once a motor ic chip is put in, the pins marked by section g) use v1 or v2? I am assuming v2, but I want to be sure.

In the section of this post that discussed V1 and V2, look at the picture that shows where V1 and V2 are used. See the IC slot for the L293D motor driver? The chip can use two voltages (one for logic, one for motors). The chip is wired to get both V1 and V2 (which are the same if you leave the jumper in place). If the jumper is removed and you connect a separate supply, your driver with use V2 for the motors.

Using an L293d in the onboard slot- when I connect a second power supply, it still only provides V1 power to the A and B motor outputs.  Provides appropriate V2 to everything else...

Am I missing something, but isn't the onboard slot for the L293 supposed to ouput V2 to the A&B motor connections?

 

 

So, i have hooked up a second power supply to my picaxe 020. I got my parts from the LMR solarbotics starter robot bundle. I bought new motors and they clearly needed more power. Well, i've got it all hooked up with the new motors and a second power supply v2. Anyway, i don't think my servo likes the extra power at all. Is there anyway i can reduce the amount of power to just the servo? My servo is freaking out and i believe i still need more voltage to my motors, i think the servo is going to fry if i give it any more juice. Can i throw a resistor in between the controller and the servo?

You are pushing the limits of a standard board now. The advantages is that you have a head start, but you cannot do as much as if you where designing the circuits yourself.

There is only one V2 on this board, and that is hooking up to the servos and motors.

The motor driver is making a drop on about 1.5 Volts, unfortunatly. So if you feed it say 6V, the motors only get 4.5.

What you can do, is to use a seperate motor diver. There are many cool ones, easy and cheap, search the components section for Motor Driver and similar.

However, when all this is said; Normally servos accept quite much, I would not be afraid of feeding a standard servo 7 Volts, actually I think many of them are rated 7.4 - So if you are above this, you should be looking at a completely new setup with external boards for both servos and motors. You can then use the Picaxe board as a central controller, and control all the more powerful things from it, and feed them their own voltage.

But all in all I think you should just make sure that your motors fits the rest of the setup. They should not need more power than servos minus 1.5 Volts, then they are to big for the rest of the setup.