Arduino vs Beagle Bone Black Discussion

Added by Jeremy Wright over 9 years ago

For awhile, we've been discussing the use of the BeagleBone Black for Shepard 2.0. While Aaron and I had been leaning towards the Bone, J has been pushing back some. J. is attending the NewSpace Conference right now, and it's pushed him even more into the Arduino camp. Aaron has been thinking a lot about the Arduino recently as well, and is now also (mostly) in the Arduino camp. I wanted to capture some of the reasoning here on why this shift has happened.

1. Almost every educator that J. has met at NewSpace is teaching the Arduino, which makes sense. Staying with the Arduino would allow us to offer those educators a system that's already familiar to them and their students. Aaron also feels that "[t]he educational component of the experience...from engaging students with fire and smoke all the way to problem solving with a microcontroller, is the service Shepard as a product is most ideally suited for." As Aaron and J both point out, using the BeagleBone would carry us away from this introductory market, which is really where the Shepard 2.0 kit needs to be targeted. The commercial testing of Estes motors is a market segment that's well covered, and there is little need to try to commercialize Shepard in that way. Shepard was never intended for this use anyway, since it's always been an educational and training tool.

2. Related to number 1 is the concept of what J calls a "Grandma Test", and I would call a "Slightly Technology Literate Grandma Test". Shepard 2.0 should be as close to plug-and-play as we can make it so that your grandma, who knows just enough about computers to be dangerous, could use it in her classroom. So far the Shepard DAQ has failed on this front, but largely because we haven't been able to put the care and feeding into the software we would have liked. As we move towards Shepard 2.0 we can take a serious look at making the software more grandpa/grandma friendly.

There's quite a bit of discussion that has to happen surrounding this discussion, including:

1. The 30 foot safety radius specified in the NAR safety manual for an E motor. We can't reach 30 feet with an Arduino's USB cable, but we can (barely) reach 15 feet, which is the minimum safety radius for motor sizes A through D. If the 30 foot radius is there only to protect against "landsharking" (the rocket travelling horizontally instead of vertically), we should be able to reduce it to 15 feet.

2. The reliability of UBS/serial communications between the Arduino and the laptop. So far there have been some ease-of-use issues surrounding the communications, but this should be addressed (at least partially) in future commits to the Shepard software repository.

3. Stick with Processing for the front end, or move to a new language/platform? We've done quite a bit of work on Shepard's Processing app already, and the Arduino community seems to be very comfortable with Processing, but we need to make sure that it's the best fit for Shepard 2.0.

J and Aaron, did I miss anything?


Replies (6)

RE: Arduino vs Beagle Bone Black Discussion - Added by Christopher Sigman over 9 years ago

One thing I would note is that the 15 ft can easily be doubled by using a USB extender, which normally run ~$20 I think. There's also more expensive options, but they give you much longer range (such as USB over IP, which gives you 100m range).

In terms of the software, I'm willing to help hone it if there's the need; I've got a bit of Processing and Arduino experience.

RE: Arduino vs Beagle Bone Black Discussion - Added by Jeremy Wright over 9 years ago

Thanks Chris. Are there any USB extenders that run don't require an external power supply?

I'll be in touch on help with Processing. If we're going to stick with Processing there are quite a few upgrades I want to make. The current software was thrown together by just me to get ready for OHS 2012 and needs much more thought put into it. It would be nice to hold a code review Hangout where we can talk about things like architecture.

RE: Arduino vs Beagle Bone Black Discussion - Added by Christopher Sigman over 9 years ago

I've done a bit more research into USB extenders, and it seems virtually all of them are USB over IP, and most are limited to USB 1.1 (i.e. 12Mb/s). They seem to start at around $10, but I'm not so sure about quality for the lower priced ones. There are some that do USB 2.0, but they all seem to be powered, and the good ones seem to start at $50. I'm wondering at this point whether it might make sense to use the arduino ethernet board (although you loose a couple of pins I think), or to use an XBEE and its adapter instead.

RE: Arduino vs Beagle Bone Black Discussion - Added by Jeremy Wright over 9 years ago

I think the question of whether or not we need to switch away from the basic USB interface will be answered by answering the 15' vs 30' safety radius question. I know J has some thoughts on this, and I'd like to include this discussion in a code review Hangout. I'm drafting a forum post that can serve as a starting point for a Hangout agenda. I'll hopefully have that posted by the end of the day.

RE: Arduino vs Beagle Bone Black Discussion - Added by Jeremy Wright over 9 years ago

I think the question of whether or not we need to switch away from the basic USB interface will be answered by answering the 15' vs 30' safety radius question. I know J has some thoughts on this, and I'd like to include this discussion in a code review Hangout. I'm drafting a forum post that can serve as a starting point for a Hangout agenda. I'll hopefully have that posted by the end of the day.

RE: Arduino vs Beagle Bone Black Discussion - Added by J. Simmons over 9 years ago

Jeremy, the only thing I can think to add are Aaron's comments from his email on this topic. I am quoting those comments below.

Hi Folks,

After some thinking over the past couple of weeks, I feel that sticking with the arduino is the best, "most correct" solution. While the teaching and "grandma test" logic is sound, there is another point that convinced me. Shepard isn't just a test stand, and testing rocket motors is not it's primary function. Estes motors really don't need tested; we will never be able to sell shepard runs as a service for example. The educational component of the experience on the other hand, from engaging students with fire and smoke all the way to problem solving with a microcontroller, is the service Shepard as a product is most ideally suited for. Switching to the bone now would have us walking away from our experience for no real reason, give us a new learning curve when we can least afford it, and move Shepard away from it's target market.

Once we hit Grissom, Glenn, and beyond, we will have to revisit this simply because the arduino cannot read that many sensors without slowing the scan rate. At that point the service offering of the product changes as well. When we hit that scale, the purpose becomes some education at a college level perhaps, but these will be used to test rocket motors of various types as well as gain experience working with a test stand. From an EC standpoint, that means that Shepard, Grissom, and Glenn really won't hit any EC boundaries due to their focus and perceived use. A scaled up Glenn, Carpenter, Schirra, or Cooper, assuming the capability goes up with powers of 10 like the kites, will be rocket test stands where their primary reason for existance is to provide reliability and/or parametric data about the device under test. This is where we need to be concerned about scale, and provide a common DAQ architecture.

I have a couple of ideas on how to use the arduino with an E motor safely as well as improving the safety of the design and process, and I want to hear what you guys have come up with. I think this is a topic we need to have a meeting about, or at least a lively round of emails, since it directly impacts the service offering to our target market.

Best,

Aaron

(1-6/6)