hello, I decided to use robots in my pba ARC32, or SSC32 and Bot Board, but not sure whether to use the ARC32, I say? recomendais which I, with the ARC32 no problem to add the module to the serial port xbee not? (Sorry for my English)
Hi,
Sorry but I don’t fully understand your question. In particular I am not sure what you are wanting to use either the Arc32 or SSC-32( with BB2 with Bap?) to do.
If you are asking if the Arc32 by it self can run it handle the servos and the programing for something like a Hex robot, it can. My Phoenix is set up this way and I think it works well. Yes, it can it run an XBee on it’s hardware serial port. I do like the fact that the ARC32 has two hardware serial ports, where the S_IN/S_OUT are on a hardware port. I use this in several of my programs, to add a simple serial monitor, that does not eat up much CPU. I also like that it runs at 20mhz instead of 16mhz of the BAP28
Thercompatibilitybliity issues between the BAP28 and ARC32 with the code. Things like: the values you pass to HSERVO to move the servos is different between the two. The hardware serial port you use for normal stuff is different and you need to change the code everywhere you use it, luckily this was somewhat cleaned up where you can do most of this by changing a constant value that you pass to HSERIN or HSEROUT… Don’t get me wrong, I do like the ARC32 and wish I had a couple more.
I don’t know if I answered your question, but I hope this helped.
Kurt
Hi Kurt, I’m thinking of using ARC32, but I do not know if it works well and easy as the SSC32 to move the servos.
And to control a robot, you only need the ARC32?
-I can move easily serve groups with ARC32?, It is easy to SSC32.
Yes, the SSC-32 is a very nice board for controlling your servos and does make some things easier to program, but on the other hand just using the ARC32 makes things easier as well.
Things that are easier with SSC-32:
Group Move: With the SSC-32 you simply tell the new locations for all of the servos and how much time to take to get there and it does the rest. With the ARC 32 it is a little more complicated, but not bad. That is you tell each servo where to go next and you tell it the SPD to get there. The SPD is the number of HSERVO units to change for each 20ms servo cycle. There is code that does this that is part of the Phoenix for Arc32 code (link later).
General Player (GP) sequences: The Arc32 knows nothing about using sequences that were built with SEQ or PEP or… So I wrote my own emulator of it, as well as support code for downloading sequences and the like.
Things that are easier with ARC32:
Talking to PC: As I mentioned in the first response, I have a debug/command monitor that I put in my ARC32 phoenix code, that can do things like enter Servo offset mode, turn on debug mode… Also since this on a hardware serial port, any debug messages I send to the PC will not be corrupted by other interrupts, like from processing HSERIAL from XBEE
Using XBee and not having to worry about serial data being corrupted that is sent to SSC-32. That is with the SSC-32/BAP version, I end up hooking up another IO line to XBEE for CTS and then in the code, just before I am about to talk to the SSC-32, I use this IO line to tell the XBEE to not send any more data (it may still send 2 bytes…), then I output the commands to the SSC-32 and then tell the XBEE it is OK to talk again. We do this because we usually talk to the SSC-32 using the serout command at a hight baud rate (like 38400 or now 115200), and if during this an interrupt comes in and is processed, this will through the bit timing off and the data is corrupted.
Not sure what robot or the like you are going to try to control with the setup. But with the new Beta 2.1 Phoenix code (which you can get from viewtopic.php?f=8&t=7658), we worked on abstracting out the differences between the two servo controllers, such that all of the controller specific code (Group Move, GP, …) are in their own files with functions that the main code calls. You might take a look at one of the projects up on that thread that uses the SSC-32 and one that uses the ARC-32 and you can see the differences.
Hope that helps.
Kurt
Thanks Kurt, I think the ARC32 has some advantages not have the SSC32, but I think the SSC32 is easier to control the servos, I will buy one because I want to test ARC32 pba, and control my next robot. to use an XBee module for communication.
With ARC32 you use the same libraries to control the servos with the Basic Atom Pro 28 pba?
example:
Hservo [P31 / 0]
Yes and No. That is yes you do use the HSERVO command. But internally it is a completely different implementation. Also the values are different. That is the positions are based on CPU cycles and the BAP28 runs at 16mhz and the Arc32 runs at 20mhz, so you have to scale the values differently.
Kurt
ok, thanks