Mike's SCARA Robot

I wrote up some Verilog and a test bench to go with it, and implemented it in a Xilinx XC9536XL (their smallest 3.3V CPLD). The zip file attached is for Xilinx' ISE software (which you can download for free at xilinx.com, but you will have to search to find it because it's obsolete since 2013). The newer Vivado suite doesn't support CPLDs or even the older FPGA families.

I don't have the faintest idea if this is right, but it's based on the Simon schematic and hopefully I didn't hook anything up incorrectly. It at least compiles and simulates.

Be gentle, it's been a few years now since I wrote any Verilog....
 

Attachments

I wrote up some Verilog and a test bench to go with it, and implemented it in a Xilinx XC9536XL (their smallest 3.3V CPLD). The zip file attached is for Xilinx' ISE software (which you can download for free at xilinx.com, but you will have to search to find it because it's obsolete since 2013). The newer Vivado suite doesn't support CPLDs or even the older FPGA families.

I don't have the faintest idea if this is right, but it's based on the Simon schematic and hopefully I didn't hook anything up incorrectly. It at least compiles and simulates.

Be gentle, it's been a few years now since I wrote any Verilog....

Thanks so much! Give me some time to look up the software and chipset. Really appreciate your help with this. Would be a great intro to CLPD/FPGA for me
 
I have completed selection of the actual chips for my discrete digital solution to this problem. I have laid out the components on a PCB but have not routed it yet. There are 14 chips, 1 clock oscillator, decoupling capacitors, and screw terminal connectors. The board has an overall dimension of 2.62" x 1.70" (4.5 sq. in), but this might increase if I add mounting holes. The Auto Router finished 100% on the first pass, so I expect to not have too much difficulty routing the board. The small buffer in the top right corner might be a bit tricky to solder. Since I have so much room for it on this board, I might pick a larger package size.

Eagle Schematic based on circuit simulation linked above:
1592228889417.png

Board layout linked to the above schematic.
1592227878735.png"
 
Do you intend to hand solder or reflow? The last couple of batches of surface mount boards I have made I used a small toaster oven to reflow and it worked pretty good. I purchased a stencil at the same time as the boards and used Solder paste that I got via Amazon
 
Do you intend to hand solder or reflow? The last couple of batches of surface mount boards I have made I used a small toaster oven to reflow and it worked pretty good. I purchased a stencil at the same time as the boards and used Solder paste that I got via Amazon

I intend to reflow using a hot air rework station (this is the only way I've ever done it, toaster ovens look great though). I think I'm going to buy from JLCPCB and get the stencil at the same time. I picked larger SOIC packages to have as little fuss as possible with the soldering. They are big enough I could probably hand solder them if I wanted. Do you have a recommendation for a solder paste you liked? I've had mixed results with different brands. Leaded is fine for me.

Current cost looks to be $15 + $25 DHL shipping for 10 boards and stencils. Looks like delivery is 1-2 weeks from ordering.
 
looks like I was wrong about purchasing from Amazon. here is what I have.

The solder I use is 63Sn/37Pb from Zephyrtonics
Solder paste reflows at 183C / 361.3F

Here are my process notes

Step 1 : Oven set to 225F pause 2 min after 225 is reached
Step 2 : Oven set to 250F Pause 2 min after 225 is reached
Step 3 : Oven set to 325F Pause 1 min after 325 is reached
Step 4: Set oven for 365F and watch for Reflow
Step 5 : Pause 5 seconds after reflow is observed
Step 6 : Set Oven to OFF
Step 7 : TAP oven gently
Step 8 : Open door to allow quicker cooling


I used a thermocouple to monitor actual air temp in the oven.
I would do any hand soldering (connectors) after the reflow for the SMD
 
looks like I was wrong about purchasing from Amazon. here is what I have.

The solder I use is 63Sn/37Pb from Zephyrtonics
Solder paste reflows at 183C / 361.3F

Here are my process notes

Step 1 : Oven set to 225F pause 2 min after 225 is reached
Step 2 : Oven set to 250F Pause 2 min after 225 is reached
Step 3 : Oven set to 325F Pause 1 min after 325 is reached
Step 4: Set oven for 365F and watch for Reflow
Step 5 : Pause 5 seconds after reflow is observed
Step 6 : Set Oven to OFF
Step 7 : TAP oven gently
Step 8 : Open door to allow quicker cooling


I would do any hand soldering (connectors) after the reflow for the SMD

Is there a reason for the reflow profile? I've always done the hot air rework pencil until reflow occurs and then let cool. Obviously violating the reflow profile that is published.
 
@macardoso and @ats1911 ,

I think the Xilinx 9500XL series is the perfect fit for this!

I wanted to jump in earlier, but my VHDL is too rusty to be any help.

I may however have some parts, some little debug/eval boards and a way to program them!
I believe I had XC95288XL and maybe XC95144XL, I will have to dig a little though......

I will see what I can find/provide and report back.
I'd be happy to be part of this collaboration!

-brino
 
Is there a reason for the reflow profile?

I used a profile that I found from someone else and probably some online documentation. While I don't know for sure, I think that the main purpose of the heating profile is to
1. Allow all the parts to come up to temp at the same time even with different thermal characteristics
2. To be above the reflow temp for the shortest period of time.

So basically pre-heat everything evenly to just below reflow, then bring above reflow and cool down.

In the end for me, this worked so I avoided trying to fix what was not broke :). If I was in production (Electronics is just another hobby) I would spend more time to optimize.
 
I think the Xilinx 9500XL series is the perfect fit for this!

I wanted to jump in earlier, but my VHDL is too rusty to be any help.

I may however have some parts, some little debug/eval boards and a way to program them!
I believe I had XC95288XL and maybe XC95144XL, I will have to dig a little though......

I will see what I can find/provide and report back.
I'd be happy to be part of this collaboration!

We would love to have you! I'm going to try to push this discrete board out the door and then switch gears and try to learn about the CPLD. I have no experience with it, but it sounds like an awesome technology to try to learn.

Thanks for the details about reflow!
 
Back
Top