Arduino Controlled Grow and PC Program - Work In Progress

labrat420

Member
I was thinking of using a small pump on a relay to top off. u just need to have a safe gard to against an over flow, Im thinking of using a float switch wired in series with the 12v submersible pump. Oh and siphoning don’t let that happen either

You can pick up cheep peristaltic dosing pumps, they seem to be getting used in hobby aquariums a lot at the moment. Just 12v dc in chuck it on a relay or switch and away you go. although it could get a little pricey depending on how many you want as they cost $20-30 each. I just don’t want a glitch to empty the ph down or ferts it to my res, that would be bad. It would be pretty sweet to have a fully auto set up thow for ferts A&B, PH, peroxide and top off.
 
Hey Newbie...
I've got a question:
Why are you using DHT-11 and LM35 together? Why dont you use the DHT-11 for both (temperature and humidity)?
Is the accuracy not good enough?
If yes... I found a "DHT-22" today ---> http://www.adafruit.com/products/385 ... Better Accuracy in temperature.

Regards

Edit: and what about Wireless Socket's and a Transmitter instead of the Relays?
 

AdvancedNewbie

Well-Known Member
Hey Newbie...
I've got a question:
Why are you using DHT-11 and LM35 together? Why dont you use the DHT-11 for both (temperature and humidity)?
Is the accuracy not good enough?
If yes... I found a "DHT-22" today ---> http://www.adafruit.com/products/385 ... Better Accuracy in temperature.

Regards

Edit: and what about Wireless Socket's and a Transmitter instead of the Relays?
Lol, the only reason I used the LM35 and DHT11 together is because it's cheaper. Plus I just wanted to buy a couple LM35's for use in other projects too. I thought about wireless sockets and then immediately thought I wouldn't want anybody 'accidently' controlling my relays.
 

AdvancedNewbie

Well-Known Member
Parts List:

1x MEGA 2560 (eBay)
1x Raspberry Pi ($35 @ element14)
1x SSD-1963 Touchscreen (eBay)
1x DHT-11 Humidity Sensor (eBay)
1x LM35 Temperature Sensor (eBay)
1x Light Dependent Resistor (eBay)
2x Phidget pH module (robotshop.ca)
2x cheap BNC pH probe (eBay)
1x RSSDN-25A Solid State Relay (w/ zero-crossing) (eBay)
1x 4-Channel Relay Board for Arduino (eBay)
3x Dual 120V outlets
1x USB Wall Wart (or a 5V powersupply)
1x DIN Rail
1x 8-port DIN module
1x 120V Electrical Wire - amperage rating based on what you will be powering
1x Machine Screws
2x 2-Row Headers (eg. 16x2)
(eBay)
1x Prototyping Soldering Board
(eBay)
1x 4-port ethernet port (eBay)
1x EAC 309 Power Jack
1x Project Case
1x Rocker Switch
1x Panel Mount Ethernet Jack
4x Ethernet Surface Mount Box (for sensor box's)
2x Spare USB Cable
1x Hook-up Wire (different colors)
10x 10Kohm resistors

This is just a rough list...
 

ArCaned

Active Member
Working in the computing industry I have often thought of doing something similar to this but never did. Good job, the application looks great, totally jealous :D


+rep for the stonernerds
 

AdvancedNewbie

Well-Known Member
I plan on making some sort of calibration interface soon enough to come up with the equation by itself, and gives instructions, but that'll have to wait.
 

wangyo

Member
If you're interested in arduino grow room controllers, you may want to check out www.harvestgeek.com Looks like it is aimed at hydroponic agriculture (ya right) but I could see it being used in grow rooms just as well.
 

smigula

Well-Known Member
hey AdvancedNewbie your pm inbox is full so I can not send you any messages, but I just got the new raspberry pi and I was wondering how do you have it wired up to the Arduino to get sensor data?
 

AdvancedNewbie

Well-Known Member
I've just been using the USB port right now, but I have a 5V to 3.3V Logic Converter that I'll be wiring up too so I don't have to use the big USB cable. I'd have to look at the Rasp Pi pinout, etc, etc. But I plan on doing this soon - I'll let you know when this happens - almost done my new hardware box - I'll post pics soon.
 

jujubee

Active Member
Looks good. I plan on doing something similar and ran across your project on sourceforge. Then I realized I had seen it here before, and even commented in the thread. I am pretty sure I will base my project on yours.

What distro are you using on the rasp pi?

You may want to look at the adafruit occidentalis distro if you are not using it. It has some useful stuff in it. One thing I want to do is add a real time clock.

http://learn.adafruit.com/adafruit-raspberry-pi-educational-linux-distro/occidentalis-v0-dot-2

Version 0.2 updates (new!)

  • Truncated image - only 2.6G now to fit on any 4G card
  • raspi-config notice retained on boot
  • Removed persistant wlan0 entry
  • Password-change reminder on login
  • Added RTC and lm-sensors kernel module
  • Included kernel modules for: DS1307, AD626 I2C digipots, HMC6352, BMP085, ADS1015
  • New! Adafruit's PWM/Servo kernel module for easy PWM/Servo control on GPIO#18

Version 0.1 updates (still included)

 

AdvancedNewbie

Well-Known Member
I have a DS1307 attached to the arduino that sends the time to the raspberry pi through serial. This would be a nice distro for attaching everything directly to the Pi, but I want the arduino to take care of everything because if the power goes off, it'll boot back up in about 2 seconds and start making decisions right away. This does look interesting though, thanks for the find :)
 

jujubee

Active Member
A couple links on Raspberry Pi GPIO serial to Arduino
http://www.raspberrypi.org/phpBB3/viewtopic.php?f=37&t=22736
http://www.andremiller.net/content/raspberry-pi-and-arduino-via-gpio-uart


I want to have sensors on both the Arduino and Raspberry Pi. I know it seems silly, but I think they will both have RTCs in my project. I haven't used any sensors or an RTC on the Raspberry Pi yet. I want to try Dallas One Wire stuff. I plan on ordering some things in the next couple days. I need a bi-directional logic level converter, and I want a breakout board for the GPIO pins of the Raspberry Pi.

I was looking over the code. Highly awesome. I don't plan on using a touchscreen, and it looks like the code was written around that. I may do a 16x2 Character LCD and some buttons, but I think that would be more of a back up input/output method, or to get or set basic info, like an IP address. I would like to abstract the input method. I want to have the ability to edit a simple text file that has all of the configuration/timing information for the environmental controller. Use the Raspberry Pi as a front end for input in my project.

Being able to run the Arduino IDE on the Raspberry Pi, and reflash the Arduino is a pretty neat feature I would like to have in my project.


code suggestions:


Maybe use "tmp" instead of "temp" when it stands for temporary and only use "temp" for temperature.


Maybe go to a multi-file sketch to make the code easier to search....maybe one tab for variables, different tabs for some of the major functions


Looks like a lot of eeprom writes, but maybe that is just how it looks in the code, and they don't get called much. I just did a quick look. I didn't try to figure out how many writes would happen in a day, but I would try to keep it under 100. IIRC, you get about 100,000 write/erase cycles.

Anyways, thanks for doing the heavy lifting.
 

AdvancedNewbie

Well-Known Member
I have since took the LCD out of the project, and am focusing on web-based control right now. I have also added a camera to the page and that is working now too. The code is much easier to understand now. The EEPROM is only used incase of power outtage. You will only see those values being used upon startup, to reload all the setting values. I have edited the amount of datapoints and updated the python code. Serial communications are via UART now aswell. Thanks for your 'concerns' though... lol
 

omnidrive

Member
Hello I would like to know if you could provide me the complete list of component as well as the shema electric mounting, thank you for your work is extraordinnaire.
my actual componement:
arduino mega 2650
rapsberry pi
8 relay module
3.2 touchscreen+arduino adaptator shield
 
Top