n1ist:
I have not worked with the Picaxe, but here are a few suggestions:
Schematic:
- Add a 100n cap to ground from each power pin of each chip. On the board, it should be located as close as possible to the power pin
Ahh yes, I meant to change that. I have some 0.1uF caps I was going to swap out for the 100uF.
Since I’m switching off L293D with the PNP, I put the cap before the PNP thinking it would be better there than right at the L293D because when I switch it on, it would have to charge the cap in addition to powering on the driver, correct?
n1ist:
- Wouldn’t you be better off using FETs to switch power?
I had the PNPs, so I was going to just use them since their specs are sufficient for the draw the driver will put on them. If you think it’s critical, I’ll pick up some p-channels.
n1ist:
- Is it necessary to switch Vcc1 on the L293? With the chip disabled, typical draw will be 8mA. This way, don’t forget to drive the enable and direction pins low or Z before turning off power as Vih < Vcc1. Note also that the data sheet doesn’t specify how the part will behave if Vcc1 = 0 while Vcc2 > 0…
I’m using the SGS-Thompson L293D. With all inputs driven low, power consumption was still around 15mA. By switching VSS off, I get my consumption down to 1.5mA (basically the Picaxe and IR sensor). I want to do this for maximum battery life if we have too many consecutive days of no sunshine. This project will be installed very high and only accessible with a ladder/scaffolding so it will be a real pain if it needs attention too often.
n1ist:
- I would add pulldowns on the L293’s enable pins to prevent problems when the processor is tristated
Okay
n1ist:
- Do you intend to use the solar panel to charge the battery? If so, you may need current limiting depending on your panel. If not, connect it’s diode to the other side of the battery’s diode
The solar panel has an open voltage of about 6.3V, I’m using the solar diode to keep the battery from draining power back into the panel at night and the panel behind both diodes as a cheap way to drop the voltage to protect the Pic. It’s main purpose is keeping the batteries charged since it doesn’t have enough current to start the motor.
n1ist:
- You may need additional filtering on the processor’s power (or ideally a second supply) to keep motor noise from causing problems
The motor draw is only about 60mA free running and 350mA stall. It seems to work fine on the breadboard so I’d rather not complicate things by adding another power source. This will need to be self-sustainable because it’ll be mostly inaccessible.
n1ist:
PCB:
-
Traces should meet branch or connect to pads at right angles; acute angles can cause acid traps
-
Traces should bend with 45 degree angles
-
It looks like there are some places on the blue side where traces come very close to pads (left of solar connector, Picaxe pin 14)
-
I’m not a huge fan of autorouters
So if you don’t use the autorouter, how do you make sure that you’ve connected every trace? The air wires still show up after I’ve manually run a trace. The only way I could see get rid of them was to run the autorouter afterwards and if it didn’t add anything, then I assumed the connection was good… but I didn’t feel comfortable with that so I just let it do the work.
n1ist:
-
You can route the control signals with finer traces (10 - 15 mils) and ease up on the congestion
-
I would put the L293 next to the motor connector; no sense running high current noisy traces around the board and under the processor
Good idea. I think I’ll switch the positions of the PNPs and mosfets and leave the mosfets standing up (clearance down the middle of the board would require they are lying down), then put the motor terminal at that end. I hadn’t planned to mount the PNPs so they were mounted completely flat. I was going leave them up enough to get a short screw in there… but with the mosfets on the outer edges standing up, that’ll make that a non-issue.
n1ist:
- Pay particular attention to power and ground routing here as this is a motor driver. Try to make these tracks wide with as few vias as possible to reduce inductance. I’d even consider using a ground pour and trying to keep traces on the other side of the board as much as possible. If using the same power source for both the processor and motor, consider splitting it right after the diode so one trace goes to each
I’ll try that if you can answer my question about manually running traces and verification that they’re connected.
n1ist:
-
It looks like there are mounting holes under the TO220 transistors; you can’t use them if the transistors are mounted flat
-
Create the proper footprints for the transistors; when doing board designs, you always need to create some footprints, so you should learn how. Using the wrong footprint here means that there are no mounting holes for the FETs
-
The 4 ground pins on the L293 are used for heat dissipation; put a copper pour under the chip as shown in figure 7 of the data sheet
But there is no figure 7 showing this in the ST L293D datasheet… ahh but there is in the Ti datasheet! Even tho ST doesn’t mention this, that sounds like a good idea. I attempted to use some ground pours in other areas, but had the same issue as manually running traces… how do i know it’s connected and get rid of the errors complaining about “Overlap” when I run DRC?
Thanks a lot for the suggestions Mike.