• Why not take a moment to introduce yourself to our members?

jimb432

Reefer
Rating - 0%
0   0   0
I'm doing my software engineering masters thesis project on an aquarium data monitoring and control system. It is a programmable aquarium management system that serves as both a real time data acquisition system and a device controller. It's built using low cost commercial-the-shelf hardware (DA/IO by LabJack), and runs under the Windows OS. Let me offer up a little smackerel of info (I promise to expand a bit later on).

20 Output Device Controls (Pumps, Heaters, Wavemakers, Lighting, 12v devices, moon lighting, anything).

8 Analog Input Channels for Data Acquisition. The only probe currently supported is temperature. pH to follow shortly, than perhaps Salinity and/or DO, etc. Other sensors can be programmed in (photoresistors, float switches, etc).

Sunrise/Set times are user definable as either preset times or by offering up a set of coordinates (lat and long), and I'll calculate the proper sun time cycles and add or subtract whatever offset you would like. The same goes for lunar cycles.

Preset or Randomized Wavemaker controller with feeding schedules to temporarily disable powerheads/pumps.

The system will display sensor data real-time on the connected PC, as well as publish that sensor data to a web service on the Internet. This will allow the user to remotely monitor their system by logging into the web service (website). Webcam support is built in for those folks that can't stand to be away for too long :).

Set of warnings built in (currently only based on temperature). Emails or annoying noises (your preference). Other warnings/triggers based on sensors will be added when I get the sensors ironed out (ozone controller, pH controller, etc).

Hope you guys enjoy!

controller.jpg


Currently in a prototype phase, I don't believe I'll take this to the level of a commercial venture.. I'll make the system public and free for any DIY'ers that would like to try it out. The hardware required for a standard system would run under $150 (obviously no PC included (or fancy probes either)).

Thanks!
jb
 

jimb432

Reefer
Rating - 0%
0   0   0
The scope just happened to be on the floor when I took the picture.. But, I was using it, instead of connected loads, to test the system during prototyping.

I should have a fully functional system up in the next three weeks.. I'll get my system online and give out the URL for folks to take a look at the web interface.. I'll also post up some screenshots of the app when I get a chance to make them a bit more 'pretty'.

It works very well so far. I'm glad I went this way instead of using an X10 based system. Solid state relays ($5-$6) are relatively inexpensive compared to X10 modules and absolutely no problems as far as ballasts/loads/cable lengths/etc go. The wiring is very simple (as the SSR modules I chose have the proper snubber circuits built in). The most complicated part of the outlet box is wiring the DB25 (25 pin D-Sub Connector). With ~20 available digital I/O channels available, this could probably control the most complicated setups..

I was really hoping to get my hands on some more probes to try... If anyone has any old Controller-based probes that are slightly out of calibration (but still function) and would like to donate them to the project, I'd appreciate it. :)

The temp probe is pretty simple. I was previously using a Platinum RTD device, but gave up on it after getting frustrated. I tried out the LM337 based probe that LabJack offers and it works great.. Should be able to put a similar probe together for under $10. (Sealing it in a glass/acrylic/pvc tube is the hardest part).

I'm have reservations about a system as critical as this running under the Windows OS. This project was more of a proof-of-concept that it could be done very inexpensively. I wanted to be able to offer this up as a DIY project on the web when I was finished (the hardware would obviously be DIY, I wouldn't think anyone would want to re-code it for 'fun'). Because of this, running it as a *nix app (or other OS) would make it less accessible to the majority of users (Please, don't suggest Java, I hate everything about the language :) ). But, assuming a dedicated computer running only this system on a clean OS install, there should be few, if any, crashes (no bugs in my code :) ).

I'm currently thinking about the heater/chiller control system right now.. I don't want to leave heaters in the hands of a computer.. Sorry, but I don't trust them as far as I can kick them. This will use normally-on relays. Therefore, the heater would always be on, regardless of the state of the computer. If anything crashed, heaters wouldn't turn off.. In this case the system would turn the heater OFF, not ON, when necessary. (Hopefully the heaters would default to the dialed-in settings). I'm working on some critical temperature triggers that will cut off lighting/turn on fans if temps exceed a critical limit as well..

jb
 
A

Anonymous

Guest
Rating - 0%
0   0   0
It sound interesting. I get annoyed with my X-10's. There not horrible, but somedays you come home from work, and the lights aren't on. It doesn't happen often, maybe once every couple of months, but annoying just the same.

Keep us posted on your progress Jim.

Louey
 

O P Ing

Advanced Reefer
Rating - 0%
0   0   0
hi.
I agree with you on the use of dry contact instead of X10. In fact, I tried very hard to stay away from X10-based controllers. The following is my comments.

1, much cheaper controller are available for less than $50, but not as much feature as yours.

2, try to use titanium tubing for the temperature probe, since if the protector is plastic, it is not easy to find one with good thermoconductivity.

3, try to stay away from computer OS if possible. In addition to the reliability issue, it is quite a waste of energy when a 4 MHz CPU is suffice. Depends on what you want to do, and the type of controller, you can look into the use of PDA or calculator for the purpose. Hewlett Parkard's HP48 series, for example, have a programable UART that you can use to hook up to a RS232 port on a controller, and it is sufficient for all you needs.

4, for an even better system, you want to burn the OS on a EPROM, and have a delicated CPU, LCD, and keyboard, but that is a lot more work than a master's thesis, I guess.
 

crxguy

New Reefer
Rating - 0%
0   0   0
Looks like an interesting and educational project.

However, at the $150 price point you are entering the price of an industrial PLC (Programmable Logic Controller - for the non electronics types). And as you said doesn't incude the price of a PC and copy of MS Windows.

I picked up a programmable relay (Siemens Logo- Allen Bradley also makes one) for about $60 on ebay that is used to control lighting. It is a stripped down PLC. It has 4 AC inputs, 4 relay outputs, a real time clock and an LCD display.

PLCs with analog inputs and more I/O start at about twice that new.

PlCs require very basic programming skills and are at least an order of magnitude more reliable than a PC based solution, require less power, restart immediately after a power failure and are built for harsher environments than a PC.

You do need a PC connected to program the PLC (the programmable relays can be programmed from the buutons on front), but it runs without one there after.

This info is aimed at the DIYer who is looking more for a cheap and effective solution than an interesting electronics/software project.
 

jimb432

Reefer
Rating - 0%
0   0   0
O P Ing":3nmywnwh said:
1, much cheaper controller are available for less than $50, but not as much feature as yours.

Having the lowest cost possible was never a goal, only that it was affordable to myself, since all expenses would be paid out of my cheap pocket.

O P Ing":3nmywnwh said:
3, try to stay away from computer OS if possible. In addition to the reliability issue, it is quite a waste of energy when a 4 MHz CPU is suffice. Depends on what you want to do, and the type of controller, you can look into the use of PDA or calculator for the purpose. Hewlett Parkard's HP48 series, for example, have a programable UART that you can use to hook up to a RS232 port on a controller, and it is sufficient for all you needs.

Not even close to being a goal or aspiration for this project. Besides, there are plenty of very low cost, low power laptops available that would more than suffice for this project. Besides, energy wasting is seldom an issue with marine aquaria.. Hell, most people go out of there way to waste elecricity.

O P Ing":3nmywnwh said:
4, for an even better system, you want to burn the OS on a EPROM, and have a delicated CPU, LCD, and keyboard, but that is a lot more work than a master's thesis, I guess.

I'm studying Software Engineering Management.. Not hardware or computer, hell, not even computer science, the focus is on the management of large scale software engineering projects.. In reality, the project itself is meaningless (it's not the goal, but the road by which I get there). I had to fight to include even this level of hardware complexity (and dependencies on other third parties) into my project.

I do, however, agree with your points.. But, you can't overlook the cost of development. It's the fact that the computer and acquisition hardware is developed and easily utilized that something like this is easy to implement (read: low cost). There are custom stand-alone units available already that are very good, but the fact that they are hardware based makes upgrading and flexibility close to impossible.

jb
 

jimb432

Reefer
Rating - 0%
0   0   0
crxguy":asbgkql8 said:
Looks like an interesting and educational project.

However, at the $150 price point you are entering the price of an industrial PLC (Programmable Logic Controller - for the non electronics types). And as you said doesn't incude the price of a PC and copy of MS Windows.

<rest snipped because I agree with every point :) >

Agreed, 100%, up, down, left, right, absolutely.. I actually started some of this project working with AB PLCs, as well as a great miniature PLC setup by a company called Keyence.. Check em out sometime. But, like I mentioned above, really wasn't able to do something like this, goal was the software methodologies, not the system.

Going for a system with 100% reliability and uptime, I'd go with a set of AB PLCs, no doubt in my mind. However, one of the key goals of the system was remote web-based monitoring of the system. This is something a little harder to implement in a PLC system, and would likely just require a computer acting as a middleware agent between the PLC system and the web-system.

Alot of folks see the control aspect as being the most important.. I am looking at the data acquisition and remote monitoring as the valuable part of the system...

jb
 

koehler

Experienced Reefer
Rating - 0%
0   0   0
Very, very cool Jimb432.

I have just started working on yet another computerized monitoring system, and you may have put me off with that Keyence stuff.
Very cool.
However, I also am -not- looking for active automation.

I simply want an inexpensive, data logger.


Currently, the bugger for me was finding something USB based, however you have solved that with the LabJack!!!!!!
Now, its on to finding DIY sensor probes, or inexpensive alternatives.

I understand the academic goal is more important than the actual nuts and bolts part of the project for you. However, for me, its the opposite as I already do that sort of stuff at work.

Thanks for some excellent info.
 

jimb432

Reefer
Rating - 0%
0   0   0
If you find a decent source for probes (as well as the data sheets on how to interpret the data) make sure you post it up for the rest of us! I've been having a hell of a time trying to find any decent information!

Back to software.. I've been developing software for a number of different platforms (pc, *nix, various mainframe systems) for about 10 years now. With the shift towards moving development off-shore, I quickly came to the realization that it wasn't a smart career move to remain an in-the-trenches developer. Hell, my undergrad is in Biopsychology/Psychopharmacology, I'd never be able to find another IT position with those credentials and the last time I checked, a psych degree was as good as toilet paper.. :) So, I decided it was time to make the move to management. I'm finishing up my M.S. this quarter, and I'll be starting my MBA in the fall. The software industry is rapidly declining in this country as companies move development overseas, sure, it'll never be what it was during the whole 'net fiasco, but hell, I'm not so sure it'll ever recover at all.

jb
 

bstreib

Experienced Reefer
Rating - 0%
0   0   0
Hi Jimb432

I’m very interested in your project. I have worked with several of these online project groups but all seem to meet the same fate and simply fade away. I have a few DIY sensors and probes. I would like to share information with you if you’re interested. I have a few resources I know you would find helpful in your system.

www.omega.com request their free reference library. It has a wealth of information on probes and measurement systems. The library can be obtained in printed and CD format.
www.dataq.com They make a small reasonably priced 4 channel data logger that comes with software [about $25.00] I think it is model DI-194.

Most of my automation has been done using X-10. I have found a way to modify
the modules to make them smarter using ladder logic. I have been able to build automatic water changers, top off systems and surge devices using this technology as well as the lighting control. These systems can be made extremely intelligent by incorporating Boolean logic circuits into the ladder logic.

The most difficult part of the probe input to a control system, is finding a reasonably priced instrument front end for the probes. This is required to allow for calibration and offset set up. Several of the ones published on the net suffer from stability problems.

I have designed and built several current sensors which allow you to turn devices on/off depending on whether or not they are drawing an electrical current. I used this to tell me whether the main return pump is operating or not. I am working on a DIY flow meter to be used to determine whether there water flowing in critical parts of the system.

I’m wondering if your software has the capability of looking up values contained in a table and then using these values to turn on and off discrete devices. I need some kind software capable of doing this to be able to finish my tidal surge simulator. The device works now but requires daily manual input.

I would love to here more about your project and possibly correspond with you about it. If I can be any help or if you would like to see some of my DIY sensors please let me know. Thanks Bill
 

ccicle

New Reefer
Rating - 0%
0   0   0
I like the idea of your project. I think it will get you far in your choice of fields. I do like the idea of using a laptop. Especially since on ebay a 100Mhz Pentium with color display can cost only about $50. I know I use about 5 of them now. And I hate x-10 also. love the idea of the SSR. Please keep posting updates I'd love to see the finished product. And a DIY website with plans and such.

Thank you very much

Chris :lol:
 

jimb432

Reefer
Rating - 0%
0   0   0
Still working hard on this, I've got until the 23rd to get the bulk of it done (at least enough to meet my requirements documents).

Anyway, I've been working on the web monitoring tool lately. I've got most of the guts in place (back-end database, objects, etc), all I've got to do is make it look pretty.. I threw together a basic HTML page to let everyone monitor my tank status in real-time via the web.

http://www.jamesbednar.com/lookup.asp

Like I said, it's not pretty, but it's all there! Take a look!

Jim
 

jimb432

Reefer
Rating - 0%
0   0   0
ccicle":3aluw1y3 said:
I like the idea of your project. I think it will get you far in your choice of fields. I do like the idea of using a laptop. Especially since on ebay a 100Mhz Pentium with color display can cost only about $50. I know I use about 5 of them now. And I hate x-10 also. love the idea of the SSR. Please keep posting updates I'd love to see the finished product. And a DIY website with plans and such.

Thank you very much

Chris :lol:

Chris,

You bet, as soon as I get some free time (after the project is done), everything will be up on the web!

Jim
 

ccicle

New Reefer
Rating - 0%
0   0   0
Can't wait to see how you complete to project. I would like to give any imput you need if you would like to Program in VB. I'm an amature but am very good with the IDE. Keep up the great work

Thanks Chris :lol:
 

ccicle

New Reefer
Rating - 0%
0   0   0
For your OS for the project have you considered Linux, its free multitasking and can run on even 486 computer and the programming aspect is very well documented and free.

Good luck

Chris
 

BallPy

Experienced Reefer
Rating - 0%
0   0   0
ccicle":1jtum5ao said:
For your OS for the project have you considered Linux, its free multitasking and can run on even 486 computer and the programming aspect is very well documented and free.
I agree with you. I would like to see if it is possible to use an open source OS.
 

Sponsor Reefs

We're a FREE website, and we exist because of hobbyists like YOU who help us run this community.

Click here to sponsor $10:


Top