Shop OBEX P1 Docs P2 Docs Learn Events
New to Stamp - Project questions — Parallax Forums

New to Stamp - Project questions

btutorbtutor Posts: 7
edited 2006-04-02 13:44 in BASIC Stamp
I am new to the Parallax product line.· And I'm trying to figure out if this system can be used for my project.

Project Summary:
I have 112,000 bytes of data - values between 1 to 8.
I need to process that data 1 byte at a time and turn on 1 of 8 motors for a brief period.
I have a 9th motor I need to turn on briefly after every 280th byte of data.
All motors need to be continuous rotation.
I may need 1 limit switch input to zero the system at startup.

Something like this:
REVERSE MOTOR9 UNTIL LIMITSWITCH1
FOR count1 = 1 TO 400
···· FOR count2 = 1 TO 280
········· GET val
········· IF val = 1 STEP MOTOR1
········· IF val = 2 STEP MOTOR2
········· ...etc...
········· IF VAL = 8 STEP MOTOR8
···· NEXT count2
···· STEP MOTOR9
NEXT count1

I think I can do this with:
Basic Stamp Discovery Kit #27807
9V Power Supply #750-00008
Parallax Servo Controller #28823···
7.5VDC 1 amp Power Supply #750-00009
9 Parallax Continous Rotation Servos #900-00008

Questions:
Do I have the right parts here?
Can I add either memory or some other data storage to this system that would store all that data (112,000 bytes)?
If not,·can I dynamically transmit the data to the stamp in smaller chunks from my PC as needed?
Would that data be sent via the serial/USB port or would I need to add either a Bluetooth or infrared module.
Does Parallax offer a simple contact switch I can use?

Thanks for any help you can offer.

Comments

  • Bruce BatesBruce Bates Posts: 3,045
    edited 2006-04-01 19:33
    btutor -

    I'll let someone else who is more familiar with all those product numbers double-check that part, but you seem to have the entire project well in hand. There is nothing you are presently planning to do which is outside the scope or capbility of any of the BS-2 PBASIC Stamps. Even your basic logic flow is spot-on, and only requires a small degree of syntactical correctness, which is to be expected.

    The biggest potential problem might have been the large amount of data, but you can use either method (external EEPROM) or by asynchronous serial transmission (SERIN) via any serial port, to covey the necessary command data to the PBASIC Stamp. I suppose there are advantages and disadvantages to each method, but you're probably in a better position to know that than we are. Unless you want or need wireless, there is no such requirement. All 16 pin ports can be used for synchronous or asynchronous serial data transmission. There are some limitations as to baud rate, but I don't suspect that will be a problem in this application.

    Just as a side-note only the more advanced PBASIC Stamps "do" I2C natively, so you may want to stick to an SPI/Microwire 2/3 wire EEPROM which should be just as available as those which use the I2C protocal, if you go that route. There are also certain flash memory products which work well with the Stamp, and which can contain voluminous amounts of data. Ask if you need more information.

    Good luck with your project, and shout back if you need more assistance.

    Regards,

    Bruce Bates

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    <!--StartFragment -->

    Post Edited (Bruce Bates) : 4/1/2006 7:38:41 PM GMT
  • PARPAR Posts: 285
    edited 2006-04-01 20:01
    btutor said...
    Project Summary:
    I have 112,000 bytes of data - values between 1 to 8.
    I need to process that data 1 byte at a time and turn on 1 of 8 motors for a brief period.
    I have a 9th motor I need to turn on briefly after every 280th byte of data.
    All motors need to be continuous rotation.
    I may need 1 limit switch input to zero the system at startup.

    Something like this:
    REVERSE MOTOR9 UNTIL LIMITSWITCH1
    FOR count1 = 1 TO 400
    ···· FOR count2 = 1 TO 280
    ········· GET val
    ········· IF val = 1 STEP MOTOR1
    ········· IF val = 2 STEP MOTOR2
    ········· ...etc...
    ········· IF VAL = 8 STEP MOTOR8
    ···· NEXT count2
    ···· STEP MOTOR9
    NEXT count1
    You don't mention how brief "brief" needs to be.

    And, how much/little time is allowed to elapse between activating one motor and another?

    And, what about accuracy (and precision and repeatability) of positioning (the motor's rotation)?

    And, is it necessary to retain/hold (not allow to freewheel) a motor's position once it arrives at that position?

    PAR
  • btutorbtutor Posts: 7
    edited 2006-04-02 12:31
    PAR said..
    You don't mention how brief "brief" needs to be.

    And, how much/little time is allowed to elapse between activating one motor and another?

    And, what about accuracy (and precision and repeatability) of positioning (the motor's rotation)?

    And, is it necessary to retain/hold (not allow to freewheel) a motor's position once it arrives at that position?
    "Brief" will need to be tuned in.· I am expecting 0.1 seconds or thereabouts.
    Time between motor steps will be about 0.5 seconds.
    Positioning of motors 1-8 won't need exact placement.· Motor 9 will need precise placement.
    Motors 1-8 will require basic motor braking.· Motor 9 will require precise braking.· There will be no torque on the motors to hold them in place.

    I think I can work through most of those issues once I have the gear.· My main concern is that I can store this amount of data with this gear.
    Also does anyone know·how long·these servos will standup to this duty running 24x7?· I don't see any performance data in their spec sheet.
    ·
  • btutorbtutor Posts: 7
    edited 2006-04-02 12:55
    Bruce Bates said...
    Just as a side-note only the more advanced PBASIC Stamps "do" I2C natively, so you may want to stick to an SPI/Microwire 2/3 wire EEPROM which should be just as available as those which use the I2C protocal, if you go that route. There are also certain flash memory products which work well with the Stamp, and which can contain voluminous amounts of data. Ask if you need more information.
    Thanks Bruce.· You mentioned flash memory products here.· If I could interface a memory card reader or access a USB flash drive that would be optimal.· Not knowing enough about this gear, my primary concern would be addressing this much memory (programmer dabbling in engineering).

    If·someone can·confirm that either of those options are available I think I can get the gear and work out the details from there.

    I appreciate the help.


    P.S. - After a little research I found this product: http://www.roguerobotics.com/products/electronics/ummc

    That looks like it should do the trick for storing my data.

    Post Edited (btutor) : 4/2/2006 1:23:01 PM GMT
  • ForrestForrest Posts: 1,341
    edited 2006-04-02 13:01
    >>I have 112,000 bytes of data - values between 1 to 8.<<

    Since the values are between 1 and 8 - you can fit two nibbles (values 0-15) into each byte - reducing your memory useage by half. In my opinion, I'd go for one of the enhanced BS2 modules such as the BS2PE that had direct support for I2C so you can easily access the memory. The BS2PE has 32K of memory and it costs $75 here www.parallax.com/detail.asp?product_id=BS2PE. Connect a Microchip 24LC256 memory chip (32K bytes) available for about $2 and you'll have enough room to hold all of your data. The 24LCXXX memory chips have 3 address lines - so you can easily connect up to 8 32K chips should the need arise.
  • Bruce BatesBruce Bates Posts: 3,045
    edited 2006-04-02 13:09
    btutor -

    Here are links for SD and similar card interface products, which work well with the PBASIC Stamps:
    http://www.ghielectronics.com/uALFAT.htm

    http://www.roguerobotics.com/products/electronics/ummc

    Regards,

    Bruce Bates

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    <!--StartFragment -->
  • btutorbtutor Posts: 7
    edited 2006-04-02 13:44
    Thanks all!· I·can commit to this platform now.· I should be able to work out the details once I have the gear in hand.
    ·
Sign In or Register to comment.