Shop OBEX P1 Docs P2 Docs Learn Events
Open Propeller Project #2: Envision the S3 Robot - Page 5 — Parallax Forums

Open Propeller Project #2: Envision the S3 Robot

1235711

Comments

  • BenWirzBenWirz Posts: 63
    edited 2014-09-13 08:03
    We're still working on that one Tommy. I'd love to put a access hatch of some sort but we need to explore the feasibility of modifying the molds with the manufacturer. My goal with the first S3 prototype PCB is to place the hacker port in a position on the PCB so that a hatch can be added. -Ben
    Ttailspin wrote: »
    That is a hacker port, :thumb:
    Will we still have to drill a hole in the shell to access it?

    It all looks well thought out, Can't wait to see it in action.


    -Tommy
  • PublisonPublison Posts: 12,366
    edited 2014-09-13 09:25
    Ben,

    That's some great information you shared. Thanks for posting.

    I'm sure the hacker port access can be worked out.

    Jim
  • ercoerco Posts: 20,256
    edited 2014-09-13 14:08
    BenWirz wrote: »
    We're still working on that one Tommy. I'd love to put a access hatch of some sort but we need to explore the feasibility of modifying the molds with the manufacturer. My goal with the first S3 prototype PCB is to place the hacker port in a position on the PCB so that a hatch can be added. -Ben

    They should be able to add a shutoff in the tool to make a rectangular hatch hole, or even simpler just make a knockout hole as used in junction boxes. That way you don't have to tool up a separate hatch. Properly and minimally done, it wouldn't look bad.
  • WhitWhit Posts: 4,191
    edited 2014-09-13 18:14
    I too hope for a simple access. Thanks again for sharing so much creative detail Ben!
  • william chanwilliam chan Posts: 1,326
    edited 2014-09-13 19:30
    erco wrote: »
    IMO the resolution of the existing S2 is fine, the limiter is lots of backlash and wobble in the wheels. All that play must be tightened up before any encoder improvement will be noticed.

    Agreed. A metal bearing for each wheel would be perfect.
  • BenWirzBenWirz Posts: 63
    edited 2014-09-22 10:31
    I have finished the first version of the S3 schematics and I wanted to share them with the group. Please feel free to review it and offer any feedback that you might have. I have previously discussed most of the design changes except for one last minute addition. I realized that the existing power switch was woefully undersized with a 1 amp total rating. The current through the switch could be up to 5 Amps worst case so I needed to make a change.

    After some consideration, I decided the easiest solution was to go back to the earlier idea of implementing a soft-power switch. The slide switch will be replaced with a push button switch. A push of the switch or connecting the USB cable will turn the S3 on. Power on will be indicated by an LED driven from Vsys bus. The exact LED colors and locations are still TBD. Another push will turn off the power and the power LED and will also turn off of course.

    The original issue with the soft power switch was that powering the charger IC off requires a I2C message from the Prop and there was well founded concern that an errant Prop program might not handle this correctly. I think I’ve solved this by adding a little SOT23-6 PIC to the I2C bus. The PIC will perform two and only two functions:
    • On power up triggered by a button press with the power previously off, the PIC will hold the Prop in reset while it configures the battery charger with the correct parameters and then release the reset line allowing the Prop to boot normally. The charger IC power on is triggered by a rising edge on the charger QON input.
    • A power down is triggered by a button press while the power is currently on. The PIC will hold the Prop in reset while it issues the I2C command to power the battery charger off. The power indicator LED will of course turn off.
    The Prop will still be connected to the battery charger’s I2C bus so a user can access it however they want following boot up. The PIC’s initial configuration could be changed easily.

    One interesting benefit of this approach is that I believe it makes the S3 compatible with S2 object and programs. I could be missing something but I’ve kept all of the IO the same except for one ADC input and I’ve tried to similarly scale the battery. Phil will probably catch something that I missed and prove me wrong!

    We will still want to write a slightly modified S3 object which increase the drive speeds. With the S2, we had scaled the top drive speed to correspond with the lowest battery voltage so that the drive speed would be consistent regardless of battery charge. With the S3, the boost switching power supply produces 9.0V regardless of battery charge. I believe this should let us increase the maximum drive speed which users have been asking for.

    Thanks, I look forward to your thoughts. – Ben

    BTW if you left click on the components in the schematic PDF, you can see additional information about the parts such as the description and manufacturer’s part number.

    scribbler3.pdf
  • BenWirzBenWirz Posts: 63
    edited 2014-09-22 15:26
    Has anyone played with recording sound with the S2 microphone and playing it back on the speaker? I've always thought it would be neat to let kids "record" a name for their robot, save it to the extra EEPROM space and then play it back power up. There would only be room for a few seconds of audio but that would be ok. I suspect the sound would be a little distorted due to the hardware limitations so maybe we could intentionally distort it further and "robotize" in some way. Just a crazy idea. -Ben
  • TtailspinTtailspin Posts: 1,326
    edited 2014-09-22 16:35
    I could not find a Kitchen Sink anywhere on the schematic, but it sure looks like it has everything else...:thumb:


    ratronic wrote a program for the S2 that records sound for a second or three, and then plays it back. It is very cool, but I can't seem to find it right now.
  • WBA ConsultingWBA Consulting Posts: 2,934
    edited 2014-09-22 17:22
    For the hacker port hatch, just add a block to the mold to leave a 0.50" x 1.00" hole and then fill it with removable plastic plug like Caplug P/N RER-1/2X1-16-18. It's a 0.50" x 1.00" plug for rectangular tubing. It's plug portion is 0.43" deep, so not too intrusive. The size should fit perfectly around a shrouded 3x8 header as implied by the hacker port schematic. The plugs are 30 cents in volume and I bet you could find a similar plug even cheaper through off-shore sources.
  • TtailspinTtailspin Posts: 1,326
    edited 2014-09-22 18:30
    Thanks erco, I could not remember who wrote that, or what the name of the program was...Hey wait a minute, how did I get here?, Who are you people?...
  • David BetzDavid Betz Posts: 14,516
    edited 2014-09-22 18:39
    BenWirz wrote: »
    I have finished the first version of the S3 schematics and I wanted to share them with the group. Please feel free to review it and offer any feedback that you might have. I have previously discussed most of the design changes except for one last minute addition. I realized that the existing power switch was woefully undersized with a 1 amp total rating. The current through the switch could be up to 5 Amps worst case so I needed to make a change.

    After some consideration, I decided the easiest solution was to go back to the earlier idea of implementing a soft-power switch. The slide switch will be replaced with a push button switch. A push of the switch or connecting the USB cable will turn the S3 on. Power on will be indicated by an LED driven from Vsys bus. The exact LED colors and locations are still TBD. Another push will turn off the power and the power LED and will also turn off of course.

    The original issue with the soft power switch was that powering the charger IC off requires a I2C message from the Prop and there was well founded concern that an errant Prop program might not handle this correctly. I think I’ve solved this by adding a little SOT23-6 PIC to the I2C bus. The PIC will perform two and only two functions:
    • On power up triggered by a button press with the power previously off, the PIC will hold the Prop in reset while it configures the battery charger with the correct parameters and then release the reset line allowing the Prop to boot normally. The charger IC power on is triggered by a rising edge on the charger QON input.
    • A power down is triggered by a button press while the power is currently on. The PIC will hold the Prop in reset while it issues the I2C command to power the battery charger off. The power indicator LED will of course turn off.
    The Prop will still be connected to the battery charger’s I2C bus so a user can access it however they want following boot up. The PIC’s initial configuration could be changed easily.

    One interesting benefit of this approach is that I believe it makes the S3 compatible with S2 object and programs. I could be missing something but I’ve kept all of the IO the same except for one ADC input and I’ve tried to similarly scale the battery. Phil will probably catch something that I missed and prove me wrong!

    We will still want to write a slightly modified S3 object which increase the drive speeds. With the S2, we had scaled the top drive speed to correspond with the lowest battery voltage so that the drive speed would be consistent regardless of battery charge. With the S3, the boost switching power supply produces 9.0V regardless of battery charge. I believe this should let us increase the maximum drive speed which users have been asking for.

    Thanks, I look forward to your thoughts. – Ben

    BTW if you left click on the components in the schematic PDF, you can see additional information about the parts such as the description and manufacturer’s part number.

    scribbler3.pdf
    Any chance of a SPI flash chip to allow large C/C++ programs to be run using the XMMC memory model?
  • BenWirzBenWirz Posts: 63
    edited 2014-09-23 09:37
    Hi Danny,

    Of course we are completely out of IO but there are a couple of options. First option would be just wiring it up to the hacker port. The second option would be for me to add a DNI land pattern for an SPI flash chip to the bottom of the board so a user could solder solder one on if they wanted. How widely used is this? Is it worth adding the spot on the board or is the hacker port an acceptable option?

    -Ben

    David Betz wrote: »
    Any chance of a SPI flash chip to allow large C/C++ programs to be run using the XMMC memory model?
  • David BetzDavid Betz Posts: 14,516
    edited 2014-09-23 09:42
    BenWirz wrote: »
    Hi Danny,

    Of course we are completely out of IO but there are a couple of options. First option would be just wiring it up to the hacker port. The second option would be for me to add a DNI land pattern for an SPI flash chip to the bottom of the board so a user could solder solder one on if they wanted. How widely used is this? Is it worth adding the spot on the board or is the hacker port an acceptable option?

    -Ben
    It is not widely used at all because Parallax has never made a board that supports it but it would allow large C programs to run on the S3. Every time Parallax talks about a new product I try to get them to add SPI flash but so far have been unsuccessful. However, they have asked for XMM support in PropGCC which requires external memory so I think they must consider it important. Not sure if that applies to the S3 though. You'll have to check with Parallax.
  • BenWirzBenWirz Posts: 63
    edited 2014-09-23 10:04
    Hi Andrew,

    This is very close to what had envisioned as well, a rubber piece that snaps in and out easily. The one tricky part is that there isn't a flat spot on the shell big enough so I think we will need a custom cover. I'm currently thinking the front driver side corner is the best option, see the silver mark below.

    Anyone have an idea for identifying the pins? We could tampo print the pin ID's to the top but it might not be very asthecitically pleasing. A bigger hole would let the user see silk screen markings but I don't think they would be very easy to read since the PCB sits quite a bit below the shell and there is a limit to how big the hole can be without interferign with the light sensor shield plate. I had also thought about printing on the bottom side of the cover but the it will likely eventually get lost.

    -Ben

    IMG_3884.jpg

    For the hacker port hatch, just add a block to the mold to leave a 0.50" x 1.00" hole and then fill it with removable plastic plug like Caplug P/N RER-1/2X1-16-18. It's a 0.50" x 1.00" plug for rectangular tubing. It's plug portion is 0.43" deep, so not too intrusive. The size should fit perfectly around a shrouded 3x8 header as implied by the hacker port schematic. The plugs are 30 cents in volume and I bet you could find a similar plug even cheaper through off-shore sources.
    1024 x 768 - 75K
  • BenWirzBenWirz Posts: 63
    edited 2014-09-23 10:55
    This is pretty darn cool, thanks for the link. I'm really impressed with the microphone sensitivity. It amplifies the key clicks from my keyboard which is several fit away from the S2. Any theories about what is causing the hissing noise?
    erco wrote: »
  • BenWirzBenWirz Posts: 63
    edited 2014-09-23 10:59
    Hi David,

    Can you give me a part number or size for the desired memory chip? Does it have to be SPI or would I2C work? Maybe you need SPI for the extra speed it offers?

    Thanks,
    Ben

    BTW - Apologies for mistakenly addressing you as Danny previously!
  • David BetzDavid Betz Posts: 14,516
    edited 2014-09-23 11:04
    BenWirz wrote: »
    Hi David,

    Can you give me a part number or size for the desired memory chip? Does it have to be SPI or would I2C work? Maybe you need SPI for the extra speed it offers?

    Thanks,
    Ben

    BTW - Apologies for mistakenly addressing you as Danny previously!
    I think pretty much any SPI flash chip would work. Maybe the best bet would be to use the same one David Carrier uses on his Propeller Memory Card (http://www.parallax.com/product/40004). It should be SPI rather than i2c since, as you say, that allows for a faster transfer rate.

    Danny, David, whatever. At least it begins with the right letter! To be honest, I didn't even notice. :-)
  • SRLMSRLM Posts: 5,045
    edited 2014-09-23 11:59
    BenWirz wrote: »
    Anyone have an idea for identifying the pins? We could tampo print the pin ID's to the top but it might not be very asthecitically pleasing. A bigger hole would let the user see silk screen markings but I don't think they would be very easy to read since the PCB sits quite a bit below the shell and there is a limit to how big the hole can be without interferign with the light sensor shield plate. I had also thought about printing on the bottom side of the cover but the it will likely eventually get lost.
    IMG_3884.jpg

    What about a sticker? Something like this:

    http://www.parallax.com/product/120-00003
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2014-09-23 12:20
    By using a ten-pin SIL or DIL female header connector (8 signals, Vdd, Vss), you could eliminate a large opening and the required cover for it. Just put ten small holes in the top shell for header pins to poke through into the socket. External connections could then be made via a SIL- or DIL-to-servo-header adapter board that plugs into the internal connector thorugh the holes and which could also sport the pin labels.

    -Phil
  • ercoerco Posts: 20,256
    edited 2014-09-23 12:54
    Brill call on SIL and DIL, Phil.

    Thanks a...
  • WhitWhit Posts: 4,191
    edited 2014-09-23 14:48
    I wish there was an add-on cable and connector that brought the connections to the surface and had a printed PCB with the pin labels. You could use female connector wires at the surface. Sort of like this...

    1990-05.jpg
    970 x 728 - 260K
  • MikhailMikhail Posts: 10
    edited 2014-09-27 13:56
    На S1 и S2 в датчиках линии установлены инфракрасные светодиоды. На бумажном полигоне они работают хорошо, но на полигоне из баннерной ткани датчики работают некорректно - не видят чёрной линии, выдавая сигнал о том, что находятся над белым участком. В лаборатории робототехники РОСНОУ были проведены исследования, которые, в частности, показали, что на баннерной ткани инфракрасные светодиоды дают очень маленькую контрастность. В России соревнования по робототехнике очень часто проводятся на полигонах из баннерной ткани, и хотелось бы, чтобы следующая модель робота надёжно на них работала. Для этого нужно заменить светодиод на синий, белый, зелёный или красный. Более подробно об этом смотрите:

    http://vk.com/doc-68418689_284127024

    С уважением, Михаил Викторович Лазарев. mvlaz@yandex.ru
    http://vk.com/club68418689
  • ercoerco Posts: 20,256
    edited 2014-09-27 15:44
    From Bing Translate (Google wasn't working):

    The S1 and S2 lines have been installed in sensors infrared LEDs. On paper the range they work good, but on the range of fabric banner sensors do not work correctly-not seeing black lines, giving a signal that are over the white area. In the laboratory of Robotics ROSNOU studies have been carried out, in particular, have shown that the fabric banner infra-red LEDs produce very little contrast. Robotics competitions in Russia very often carried out at the test sites of the fabric banner, and would like to see the next model of the robot reliably worked on them. To do this, you need to replace the LCD in the blue, white, green or red. For more on this, see:

    http://vk.com/doc-68418689_284127024

    Sincerely, Michael V. Lazarev. mvlaz@yandex.ru

    http://vk.com/club68418689
  • BenWirzBenWirz Posts: 63
    edited 2014-11-12 08:53
    Hello Michael,

    Thanks for your posting and suggestions. I'm curious if you have observed the actual analog values returned by the line following sensors? The sensors have a very large dynamic range which is read by a sigma-delta ADC. We choose detection levels for the example program and GUI which seemed to work well for a line drawn with a black magic marker. The values need to be altered to use with black electrical tape for example. Although I'm not familiar with a fabric banner type line following lines which you mentioned, I would suspect that the sensor might still work with them. Unfortunately I was unable to read your paper since it is not in English so you might have already tried this.

    Thanks,
    Ben
  • ercoerco Posts: 20,256
    edited 2014-11-12 09:11
    Zdrastvuytye, Tavarish Ben. Balshoye spasiba.
  • BenWirzBenWirz Posts: 63
    edited 2014-11-12 09:23
    I've been working on the layout of the S3 control panel. I'm going to convert the LED's to to utilize light pipes and SMT LED's mounted on the back board This will get rid of the through hole LED's which will make it a little more mechanically robust and update the look of the panel. I 3D printed a quick prototype of the new concept, the shell color isn't correct of course.

    I was thinking of changing the blue LED's to be powered directly off 3V3 which would guarantee that it will be turned on anytime the power is turned on rather than being driven by shift register as it was with the S2. Someone had pointed out earlier that if you don't use the S3 object, you aren't guaranteed to have the blue LED turn on when power is on which is a poor interface of course. Anyone feel that the loosing programmability of the blue LED is a big deal given that there are already 3 user programable LED's? I guess that would mean we couldn't indicate a low battery condition with the blue LED though.

    The battery charging light pipe is intentionally smaller diameter and will be less bright than the other LED's so that it doesn't draw the users attention away from the primary user LED's.

    I would also like to put some form of indication for the FTDI serial convertor activity. I could put a 2nd light pipe on the bottom right mirroring the location red battery charging LED. A dual orange / green LED could indicate Rx/Tx activity. Maybe this same LED or light could be used to indicate WiFi activity as well.

    Your thoughts are welcome as always.

    Thanks,

    Ben



    S3-Interface-Call-Out.jpg
    Front.JPG
    800 x 483 - 87K
    1000 x 461 - 102K
  • Mike GreenMike Green Posts: 23,101
    edited 2014-11-14 09:58
    How about removing the microphone and its pre-amp, but leaving the ADC passive components with the analog input going to the hacker port or to an audio jack (with the speaker output). That way, an external microphone or other analog input could be used. Another option would be to also provide + voltage for an electret microphone using a TRRS audio jack with some kind of (more or less) standard connection.
  • MikhailMikhail Posts: 10
    edited 2014-11-17 07:02
    BenWirz wrote: »
    Здравствуйте Михаил,

    Спасибо за Ваши сообщения и предложения. Мне любопытно, если у вас наблюдается фактическое аналоговых значений, возвращаемых строку, следующую за датчики? Датчики имеют очень большой динамический диапазон, который считывается с помощью Сигма-Дельта АЦП. Мы выбираем уровни обнаружения, например, программа и интерфейс, который, казалось, работало хорошо за линией, нарисованной черным фломастером. Значения должны быть изменены для использования с черной изолентой, например. Хотя я не знаком с ткани баннерной Тип линии следующие строки, которые вы упомянули, я подозреваю, что датчик может работать с ними. К сожалению, я не смог прочитать ваш документ, поскольку он не на английском языке, так что вы, возможно, уже пробовал.

    Спасибо,
    Бен

    Здравствуйте, Бен!

    Посылаю Вам таблицу напряжений на выходе операционного усилителя датчиков линии.

    С уважением, Михаил.
  • PublisonPublison Posts: 12,366
    edited 2014-11-17 07:15
    Mikhail wrote: »
    Здравствуйте, Бен!

    Посылаю Вам таблицу напряжений на выходе операционного усилителя датчиков линии.

    С уважением, Михаил.

    Translation:


    Hello, Ben !I am sending you a table at the output voltage of the operational amplifier sensor line.Sincerely, Michael .
Sign In or Register to comment.