It appears you have not yet registered with our community. To register for free click here
Rebreather World
       
Go Back Rebreather World Rebreathers, Components and Accessories Rebreather Design & Operation

My computer idea... opinions?



Reply
 
LinkBack Thread Tools Display Modes
Old 4th January 2008, 14:26   #11 (permalink)
New Member
 
robertkarlsson's Avatar

Current Rebreather/s:
Not Bought Yet

Other Rebreather/s:
Not Bought Yet
 
Join Date: Oct 2007
Posts: 8
robertkarlsson is an unknown quantity at this point
Re: My computer idea... opinions?

Quote: (Originally Posted by camerone) View Original Post
Most are ultrasonic or thereabouts underwater. VLF works well, and no, you don't need a huge antenna. Think of it more like a speaker coil at those frequencies. You also don't care if it's a particularly efficient setup, as you're not transmitting very far - a couple meters at most.

The problem with most of these setups is that they suck for reliability.

Witness the disaster that is the AirZ O2 and Oxy2 from Uwatec. That was the first piece of Uwatec I ever bought, when I got a Dolphin five years ago as my "starter" Rebreather, and it's the last piece of Uwatec I'll ever buy. Three handsets and two replacement transmitters later, I gave up for a VR3 with the reliability of a wired cable. Not only would the thing crap out on me when I turned on my HID or my camera strobes, half the time, it would crap out on me if I wore the handset on my left wrist, with the transmitter on the right side hose of the rebreather. While I give them kudos for the free replacement, a continuous replacement of one pile of garbage with another identical one does not a happy consumer make, and the wires win the day.

WRT to the earlier discussions of how/what to write on the handset, it does take a lot less skill to write in Java or some other managed programming language than it does to write in C++ or lower level, even, in C or even Assembler.

That said, though, it takes just as much skill on the side of the programmer to actually get it right as opposed to cranking out poor code - the set of problems you encounter in a managed programming language, like Java (or C#, which I actually prefer 'cause it's got a better toolchain) is a lot different than writing lower level code, but you're just trading one set for another. In most cases, too, in a tightly power constrained embedded environment, you're wasting valuable resources running "unnecessary" code, like a GC, simply for the convenience of a developer... they're just not nearly as efficient as lower level code, except in the eyes of the authors. (FWIW, I have multiple teams of developers at work, one team codes in C++, two in Java, the rest in other obscure bits, and none gets a free ride...) My Java guys consume a lot more resources like memory, processor, and, by inference, electricity - to get the same job done, and the code tends to be slower overall. They write the code with less bugs in half the time, but spend the rest of the time trying to optimize it as fast as the other guys...who show up later, but with much snappier stuff out of the gate.)

You don't need such complexity in a handset. It's higher parts counts, higher BOM, higher instability, etc. You're working on life support gear, and the ultimate goal should be to keep it as simple and as deterministic as possible. The last thing I'd want on there is a full blown operating system to suck down the batteries...
My thought about the RF transmitter was to just act like a proxy/bridge between the cells and the "computer". The distance between the data transmitter and the "computer/reciever" would be at most a few centimeters. My thought was that this short distance should allow for reliable data to be transfered even if entirely submerged? Using IC's without any discrete componenents should make it easier to maintain.

As for using high level language, its all about abstracting OS/hardware specific programing at low level. As for using an already made OSS platform does not only save allot of time but it also means allot of people have tested it and most likely eliminated most of the bugs(going for a very stable relase of a slimmed down kernel). My idea was to code the Rebreather control logic in maybe Ruby or Java.
Going the minimalistic way of using C/ASM to write razor sharp code when it comes
to performance imho isnt worth it, Moores law.
Performance isnt an issue, and i think the power consumption when using for instance a flamesafe? laptop battery is more then sufficent. I dont think all those extra clockcycles and memory resources makes much difference in the end.

As for the computer and the power consumption, i would use something
similar to this:
TS-7800 High-End Performance with Embedded Ruggedness

A more slimmed down version perhaps but something similar. This one
enclosed in, for example, a mineral oil filled Delrin compartment with an receiver to recieve the o2 data sent by the transmitters.

Cheers

Last edited by robertkarlsson : 4th January 2008 at 14:36.
(Offline)
 
Digg this Post!Add Post to del.icio.us
Reply With Quote
Old 5th January 2008, 02:32   #12 (permalink)
New Member
 
tele's Avatar

Current Rebreather/s:
Not Bought Yet

Other Rebreather/s:
Not Bought Yet
 
Join Date: Aug 2007
Location: Norfolk, VA
Posts: 24
tele is an unknown quantity at this point
Re: My computer idea... opinions?

Quote: (Originally Posted by robertkarlsson) View Original Post
As for the computer and the power consumption, i would use something
similar to this:
TS-7800 High-End Performance with Embedded Ruggedness

A more slimmed down version perhaps but something similar. This one
enclosed in, for example, a mineral oil filled Delrin compartment with an receiver to recieve the o2 data sent by the transmitters.

Cheers
No friggin' way! I actually own a Technologic Systems TS board that was going to use in other projects! Very neat boards, and they do run Linux with a 2.4.x kernel on the one that I have, but it is a bit large. It would have to go into a box that is mounted on the back, not in a handset. It *does* have great power management features in that you can slow down the clock cycles to save power. Nice boards IMHO. I am scared about the 2.4.x kernel though.

As far as high versus low level language.... I dunno, I still tend to like tight and efficient over the idea of rapid development. Last night at a "geek meet" a local throws a tiny board on the table... it's got this tiny module that contains a blackfin based 600mhz CPU, RAM, flash and who knows what else... 200ma draw. Has on board ethernet, USB, CAN buses, parallel data bus, serial busses... so tiny and they do run Linux.

Assuming I can lay paws on this one old dive computer to rip up, I'm going to try to do SPG function and depth first, and drive a full color LED backlit (or maybe full color OLED screen). I've seen circuit level implementations of accelerometers (this is what the liquidvision is probably using for tap sensing) but haven't ever tried to program against them. I've heard they are a bit tricky or some such, not sure.
(Offline)
 
Digg this Post!Add Post to del.icio.us
Reply With Quote
Old 5th January 2008, 11:06   #13 (permalink)
New Member
 
robertkarlsson's Avatar

Current Rebreather/s:
Not Bought Yet

Other Rebreather/s:
Not Bought Yet
 
Join Date: Oct 2007
Posts: 8
robertkarlsson is an unknown quantity at this point
Re: My computer idea... opinions?

Quote: (Originally Posted by tele) View Original Post
No friggin' way! I actually own a Technologic Systems TS board that was going to use in other projects! Very neat boards, and they do run Linux with a 2.4.x kernel on the one that I have, but it is a bit large. It would have to go into a box that is mounted on the back, not in a handset. It *does* have great power management features in that you can slow down the clock cycles to save power. Nice boards IMHO. I am scared about the 2.4.x kernel though.

As far as high versus low level language.... I dunno, I still tend to like tight and efficient over the idea of rapid development. Last night at a "geek meet" a local throws a tiny board on the table... it's got this tiny module that contains a blackfin based 600mhz CPU, RAM, flash and who knows what else... 200ma draw. Has on board ethernet, USB, CAN buses, parallel data bus, serial busses... so tiny and they do run Linux.

Assuming I can lay paws on this one old dive computer to rip up, I'm going to try to do SPG function and depth first, and drive a full color LED backlit (or maybe full color OLED screen). I've seen circuit level implementations of accelerometers (this is what the liquidvision is probably using for tap sensing) but haven't ever tried to program against them. I've heard they are a bit tricky or some such, not sure.
Sounds interesting

As for my idea i was thinking to have the controlling logic in the scrubber head just next to the o2 sensors(im sure i could fit some nice hardware there). Then the transmitters would sit next to the Delrin compartment and there would be no water between the antenna even if all flooded. That way one does not need to make a hole in to the controller compartment for use of optical/electric wires. So basically it would just need to sample the data with for instance:
an No Latency Sigma Delta ADC (Alex research to thank for that).
then transmit the data with the:
http://www.atmel.com/dyn/resources/p...ts/doc4616.pdf
thickness of the Delrin wall. I just like the idea to have things physically separated.
Since the sampling is done as close as the sensor as possible then there
would be minimal loss of data. Once the data is sampled to a binary form
then distance doesn't matter as long as it can be sent and received in
a reasonable time.

When it comes to the communicatoin protocol i thought of even using
a transceiver on booth ends so that one could send an unique value for each sensor and also a timestamp and then when the transceiver on the outside of the compartment(the one next to the sensors) returns the
sensor value it contains also right unique value and timestamp and then just
add some value that can be verified by the transceiver on other end.

Also if one would have redundancy with let say 2 - 3 of those controllers
then those sensor values could easily be sent to all of those controllers in parallel(within the same point of time).
They could communicate internally and verify the data. In that case if one
controller flips out then the others will get to know it with voting logic and disable it.


I haven't thought yet of what to use as a handheld or hud. Looking forward to see what you come up with
Just a thought on optical, wont those wires be to stiff? I assume they cant be as much bent like a copper based one?

Sorry feels like i'm hijacking your thread a bit, wasn't my intention just thought like a good idea to test my ideas

Cheers

Last edited by robertkarlsson : 5th January 2008 at 12:00.
(Offline)
 
Digg this Post!Add Post to del.icio.us
Reply With Quote
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



RebreatherWorld.Com ©2005 - 2008
Rebreather World, Rebreather World and the Rebreather World Logo are Trademarks
All rights reserved, no republishing of content without written permission.
By using this website you have agreed to our Terms & Conditions of Use

Search Engine Optimization by vBSEO 3.1.0