6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Sun Nov 24, 2024 6:50 pm

All times are UTC




Post new topic Reply to topic  [ 149 posts ]  Go to page Previous  1 ... 5, 6, 7, 8, 9, 10  Next
Author Message
 Post subject:
PostPosted: Sun Sep 18, 2011 5:48 am 
Offline

Joined: Tue Aug 16, 2011 6:18 pm
Posts: 74
Location: USA Pa
I was going to ask Tony to post the photo the same place he has the Prom bin file till I can get my free verizon crap website up.. Verizon disabled FTP website uploads, So now you have to use their lousy web designer program.. And after fighting with it for a hour I figured out their APP does not work with firefox..

Are you saying they used global declared base address locations with offsets or are you saying you just use a search and replace to change each address..

The other main thing I would like to do is add four 8bit addressable latches, And and modify the code to output step and direction on them to use the new hi-voltage PWM modulated constant current driver IC's ... Maybe use the unused dip switch or some other input, To change between the original code and outputs, And the Step and Direction mode...

Of course where now moving to a 8k code block.. The first two latches would each output Step and Direction for 3 motors..
The 3rd Latch would output the 3 bits to globally select from one of eight stepping modes.. Plus a driver enable signal, And reduce current and or sleep signal,, The 4th latch is for afterthoughts.. Then add some more @ qualified commands to change stepper mode, adj current, sleep mode, and enable/disable the motors.. Pretty ambitious HuH...

_________________
When falling from a high place, You might as well try to fly


Last edited by falcon5252 on Sun Sep 18, 2011 6:36 am, edited 1 time in total.

Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sun Sep 18, 2011 6:29 am 
Offline

Joined: Fri Aug 30, 2002 2:05 pm
Posts: 347
Location: UK
Quote:
Are you saying they used global base address locations with offsets or are you saying you just use a search and replace to change each address

Neither. All the addresses should now have been replaced by symbols.

Some of these symbols are set by equates at the start of the assembly file and should only ever need changing there, others are computed during assembly and will change as needed as the source changes.

Lee.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sun Sep 18, 2011 6:33 am 
Offline

Joined: Tue Aug 16, 2011 6:18 pm
Posts: 74
Location: USA Pa
Ok.. That's what I meant by global declarations... Kind of like a Dim or Symbol statement in basic.. I emailed Tony and asked if he would post the Photo...

Can you notate in the disassembly where the main address declarations are, And could Be changed... Then I could just plug in whatever the new address decoding is and assemble it...
And I guess if we start expanding its abilities we have to create a new file name for a 8k extended code version.. As any code additions will definitely break the 4k boundary..

Withe the new High Voltage Current Controlled chips you can double or triple the max stepping speed with minimal torque loss... the only limitation is weather the CPU can handle higher step rates .. But it would no longer have to process the step pattern so it frees up a few clock cycles..
Actually you wouldn't have to add higher stepping modes because you can now only use the fastest modes if their is no load on the robot.. With current controlled drivers you would have full torque at those speeds, Making them more usefull...

New Star Arcade Board...

http://www.nightmarepark.com/6502/Star% ... 0Board.jpg

_________________
When falling from a high place, You might as well try to fly


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Mon Sep 19, 2011 9:29 pm 
Offline

Joined: Fri Aug 30, 2002 2:05 pm
Posts: 347
Location: UK
Quote:
Can you notate in the disassembly where the main address declarations are

I've updated the disassembly in the archive so that each physical device is only assigned an address once. By the .ORG for the ROM start and by equates for the others.

Quote:
the only limitation is weather the CPU can handle higher step rates

The code as is should be able to step in less than 0.6ms, probably faster than the motors ever will.

Quote:
New Star Arcade Board.

I don't recognise it either, the EPROM will probably tell more about it.

Lee.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Tue Sep 20, 2011 12:06 am 
Offline

Joined: Tue Aug 16, 2011 6:18 pm
Posts: 74
Location: USA Pa
Lee ... Thanks much for doing the code mods.. Now its pretty much plug and play as long as you have the right I/O Chips on your system..

I got logged in ok, Will upload my robot pic's shortly.. They were the photos I got off ebay when I bought them.. Plus a few generic Armdroid pics till I find the ones of mine, And some not so great photo of the chip glued to the bottom of the microbot board.. A couple of Microbot's newest robot arm, They moved the CPU from the robot to a separate controller box.. Plus my 2 Pitsco servo driven arms, I started labeling the connector but still waiting for my 8pin din connectors from china to hook it to my Pololu 23ch servo controller so I can sort out the rest of the leads.. Added the Pololu Maestro 23ch info, Its the highest resolution servo controller I found.. It has standard interface and a SDK for writing your own software,, Kit is $47.. Also added A4988 Pololu micro-stepping drive.. I bought 12 of these before I found this site I was going to put them on my Sparkfun PIC32 board to control the Microbot..

Found a New driver chip for unipolar motors 8 bit latch with output enable rated 500ma with protection diode,, I bought 10 for $10
http://www.alldatasheet.com/datasheet-p ... 801BN.html

ADDENDUM: Major screw up, total package dissipation stinks,, Only 250ma per channel with 4 of the 8 turned on at 100% duty cycle.. Each motor coil draws 377ma, Ouch

Lee ... Did you find the cable length compensation routines, That's one of the reasons I didn't go with the PIC32, Trying to work out the cable length adjustment algo's in basic would have been daunting..
If you can figure out the adjustment ratios and post them it would be interesting to know how it was done without messing up the robot position tables...

_________________
When falling from a high place, You might as well try to fly


Last edited by falcon5252 on Wed Sep 21, 2011 12:50 am, edited 1 time in total.

Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Tue Sep 20, 2011 2:11 pm 
Offline

Joined: Fri Jun 27, 2003 8:12 am
Posts: 618
Location: Meadowbrook
Better bet: TIP120 discrete transistors.

_________________
"My biggest dream in life? Building black plywood Habitrails"


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Tue Sep 20, 2011 6:10 pm 
Offline

Joined: Tue Aug 16, 2011 6:18 pm
Posts: 74
Location: USA Pa
For the MIC5801 would need a tip125 PNP ... Emitter to motor coil and resistor to base , Collector to gnd, And base to open collector output... Darlington turns on when open collector output turns on and pulls to GND.. Resistor sized to pass 125 to 200 ma from load to OC v drop on resistor turns on Darlington.. Acts as current booster.. Need to spice model it to see how back emf will affect it being both devices have protection diodes.. This way when OC driver is Disabled, Cleared or Off, The coil is off... If I used a npn it would act as a inverter.. Unless anyone knows of a pnp/npn Sziklai Darlington with protection diodes... This is not what I envisioned when I bought them .. My fault for not reading the whole datasheet, But not a total loss I can find other uses for them..

OK just got really frustrated and bought a used Ultratech Stepper Driver Board PCB 03-20-00978 for $31, It has 24 TIP127 PNP Darlington's with heatsinks and cap for each transistor, And 4 unknown 16 pin driver chips on a 10" x 9" board, Plus one 3 pin Voltage reg.. Looks very easy to hack.. Will easily drive six stepper motors up to 5 amps per coil... Worst case have to put ground on the stepper commons and drive the coils positive...

Found a good baud rate clock generator circuit and I didn't see it discussed anywhere so I thought I would mention it... A 9.8304MHz Crystal Oscillator driving CP on a 74HCT4040 or 4020 will give you the following baud rates Q4 = 38400, Q5 = 19200, Q6 = 9600, Q7 = 4800, Q8 = 2400..

_________________
When falling from a high place, You might as well try to fly


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Wed Sep 21, 2011 7:50 am 
Offline

Joined: Fri Aug 30, 2002 2:05 pm
Posts: 347
Location: UK
Quote:
Will upload my robot pic's shortly.

I've put the highest resolution image of the 'extra' chip on your board here. If you want me to post any other pictures you've taken that I have just let me know.

Quote:
Did you find the cable length compensation routines,

The only time compensation calculations are made is when the arm is moved by the buttons. This is commented in the code just after LAB_F5E4. It's a simple 1:1 ratio for the elbow/gripper compensation.

The start address of the code is set by the .ORG directive, the addresses of the devices are set by equates before the code.

Lee.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Wed Sep 21, 2011 11:27 am 
Offline

Joined: Tue Aug 16, 2011 6:18 pm
Posts: 74
Location: USA Pa
I loaded the code into Kowalski's Sim, Much more understandable reading it in the Sim than Notepad.. I did see the 1-1 comp routine, But I thought there had to be more to it, But it does make sense, If all the cable capstans are the same size and the roller pulley in the elbow, Then it would be 1-1 ... If thats all there is in the Prom, Then they must be compensating in the TeachVAL software before the commands are sent..
You don't have to flex the robot very far before the gripper clamps shut and jams the robot.. So its impossible to run the unit without cable compensation being done... It was probably done this way to make it compatible with LabView and other robotics apps.. On the plus side if you use the code for CNC, There are no compensation routines to skew the movements as long as you use a program other than Teachval to send the commands..

On the serial port are they using a software flow control, Such as Xon - Xoff... If I'm reading the code right it Looks like they just send a CR to acknowledge a ready state.. And teachval waits for a CR before sending the next code block... Or am I missing something..

I know hardware flow control can be used by bridging the W jumpers, But I have never found that part of the user manual with the configuration... Or do I just need to jumper the correct flow control lines and the 6850 ACIA will handle the rest automatically... Just wondering if it was going to be necessary at the new higher baud rates to keep from overrunning the buffer??.. Guess all I can do is try it and see if I get data corruption..

_________________
When falling from a high place, You might as well try to fly


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Wed Sep 21, 2011 3:09 pm 
Offline

Joined: Fri Aug 30, 2002 2:05 pm
Posts: 347
Location: UK
Quote:
Then they must be compensating in the TeachVAL software before the commands are sent.

From the TeachMover partial maual..

Quote:
Note: When the TeachMover is in serial interface mode, this automatic decoupling is inoperative, and, once again, rotating the elbow will effect hand closure.


Quote:
On the serial port are they using a software flow control,

No flow control is used. Even with all the motors running the 6502 should easily keep up at 19200 baud. Faster that that it may miss the odd character but that should return an error so you will probably know about it.

Quote:
Looks like they just send a CR to acknowledge a ready state.

1[CR] is sent to acknowledge a command has been completed, 0[CR] is sent if there is an error. 2[CR] is sent if a command is interrupted. There is no indication of a ready state as such.

Quote:
do I just need to jumper the correct flow control lines and the 6850 ACIA will handle the rest automatically.

It should do, it's been a while since I've used a 6850 with hardware flow cotrol but I don't recall any major problems.

Lee.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Wed Sep 21, 2011 8:27 pm 
Offline

Joined: Tue Aug 16, 2011 6:18 pm
Posts: 74
Location: USA Pa
Thanks Lee...I did search on the code and the only time the term decouple is used is for the elbow.. This has revealed a error I made in assuming the shoulder needed decoupling also, After close examination of the robot cabling I found in fact it is accomplished mechanically, By a series of small pulleys at each joint.. So the Gripper / Elbow interaction was the only one that in fact needs decoupling... So basically when writing a routine in TeachVAL or any other control program, You have to add or subtract the same number of steps you move the elbow to or from the gripper depending on direction... WoW wasn't expecting that... Will have to check my Armdroid to see if the same applies to it...

As for the serial Port, It's always been the complaint that the 6850 has such a shallow FIFO, And always needed consideration with the 6800 at high baud rates, But I guess the 6502 fast IRQ response somewhat compensates for it..

Let Me be be sure I understand this correctly.. Ascii 0, 1,or 2, + a CR Are the only control codes returned to the host.. And all data throttling would have to be accomplished by the host pausing and waiting for one of the three possible codes to be returned before sending the next command string, Or performing a error recovery routine..

More dumb questions: I know in training mode it stores a multiple command strings, But in direct control serial mode, How many command strings can be buffered at one time from the host, Or is it strictly send one string and wait for a "1[CR]" to be returned and then send the next string... Which I figure is the case being there are no buffer status codes...

_________________
When falling from a high place, You might as well try to fly


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Thu Sep 22, 2011 2:38 am 
Offline

Joined: Fri Aug 30, 2002 2:05 pm
Posts: 347
Location: UK
Quote:
Ascii 0, 1,or 2, + a CR Are the only control codes returned to the host

Correct.

Quote:
in direct control serial mode, How many command strings can be buffered at one time from the host

One string can be buffered while one string is executing but the [CR] at the end will interrupt the current command if it hasn't completed. In this case 1[CR] will be returned for the interrupted command and the new command will be executed.

Quote:
Or is it strictly send one string and wait for a "1[CR]" to be returned and then send the next string.

Given the way the buffer isn't managed that's probably best.

Lee.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Thu Sep 22, 2011 3:54 am 
Offline

Joined: Tue Aug 16, 2011 6:18 pm
Posts: 74
Location: USA Pa
Hey I got it wright for a change ... My guess is the reason a CR stops prior execution would be so a stop command is processed immediately..

Did you see the drive board I bought, 24 tip127 darlingtons.. I uploaded a few low res pics of it..

I bought some more parts for my PCB CNC today, It will be really nice to plug in a eagle file and have a circuit board 15 min later, The only drawback is no plated through holes unless you want to stuff each hole with little inserts.. The other major use is making custom plastic parts out of clear lexan..

_________________
When falling from a high place, You might as well try to fly


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Thu Sep 22, 2011 2:16 pm 
Offline

Joined: Fri Jun 27, 2003 8:12 am
Posts: 618
Location: Meadowbrook
Picture link? also if you ever need for 24 TIP120 type outputs or 24 opto isolated inputs, I had been designing a board to give me both, it runs off serial chains. Picture of the board is on my web page (ok, just the silkscreen)
http://www.nightmarepark.com/Electronic%20Projects.html
will sell for $15 each plus shipping, you stuff it yourself though...

_________________
"My biggest dream in life? Building black plywood Habitrails"


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Thu Sep 22, 2011 11:17 pm 
Offline

Joined: Fri Aug 30, 2002 2:05 pm
Posts: 347
Location: UK
Quote:
Picture link?

I won't post the pictures because they belong to someone else but you can see them all in this eBay auction for an identical board.

Lee.


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 149 posts ]  Go to page Previous  1 ... 5, 6, 7, 8, 9, 10  Next

All times are UTC


Who is online

Users browsing this forum: No registered users and 21 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: