Finally i found the time to made the arduino based suntracker for my old diy solarpanels
I made a model with a gear motor fro polulo to simulate the actuator, use a ethershield from nuelectrictronics, and i found dc motor controller chip in a defect tape deck.
In the real life suntracker i have a actuator / polarmount from a scraped from a satellite parabol. In the real life suntracker i will make a suntracker+mppt charger+inverter shield with a mosfet H-bridge.
My first version of the suntracker is a beta model, based on a nuelectronic webserver sketch.
In the beta version the position counter(interrupt) is not functional.
If you can use the first beta suntracker sketch, you can grab sketch here:
** The site is in danish, please use google translate on the site, thanks **
Latter i might 'migrate' the arduino sketch to the nabduino platform
This sounds really cool and as I am a complete novice you'll allow me to ask the really dumb questions first:
Why do you use an Ethernet shield ( I take it that the word shield doesn't actually mean that it shields something!! Doh)
I'm looking to make a 2.5m solar parabolic dish. PV's are way too expensive for my pockets. And I want to track the sun too. Simply put I just don't know where to start. Hand holding and guidance would be appreciated
Can You post a picture of what you have made here?
I was not able to copy the code from that page above. It is a .dk site but the language did not look like German.
Can you post the sketch text here too? I was mostly interested to look through your code to see what you have made but it is not easy at all on that web site.
I run 2 solar panels and numerous small electric fence panels and would like to know if I can use this.
ReggieTheDog:
Why do you use an Ethernet shield ( I take it that the word shield doesn't actually mean that it shields something!! Doh)
A "shield"" sits on top of an arduino board and all the bottom board pins are normally extended through that top board
Thanks ,Tried compiling and got " EtherShield does not name a type. I see etherShield.h is included what Library are you using?
I tried http://trollmaker.com/article11/arduino-1-0-with-enc28j60-ethernet-shield-v1-1/ it does have an EtherShield class and an etherShield class?? Looks like someone has just copied "etherShield.h" and called it "EtherShield.h". Trying to import the library into a sketch gives blank lines so this library is not working for me.
Hmm lots more warnings and errors now . If its like this in the coding I don't think I will waste my time going any further-What a shame .
variables can be placed into program memory area
SolarTracker.ino:394: warning: only initialized variables can be placed into program memory area
SolarTracker.ino:399: warning: only initialized variables can be placed into program memory area
SolarTracker.ino:401: warning: only initialized variables can be placed into program memory area
SolarTracker.ino:402: warning: only initialized variables can be placed into program memory area
SolarTracker.ino:403: warning: only initialized variables can be placed into program memory area
SolarTracker.ino:404: warning: only initialized variables can be placed into program memory area
SolarTracker.ino:407: warning: only initialized variables can be placed into program memory area
SolarTracker.ino:408: warning: only initialized variables can be placed into program memory area
SolarTracker.ino: In function ‘void goHomeToWest()’:
SolarTracker.ino:425: warning: statement has no effect
SolarTracker.ino: In function ‘void getSolarTrackerSchedule(char*)’:
SolarTracker.ino:510: warning: overflow in implicit constant conversion
SolarTracker.ino: In function ‘void getstatus(char*)’:
SolarTracker.ino:604: warning: overflow in implicit constant conversion
/opt/arduino-1.0.3/hardware/tools/avr/bin/avr-gcc -c -g -Os -Wall -ffunction-sections -fdata-sections -mmcu=atmega328p -DF_CPU=16000000L -MMD -DUSB_VID=null -DUSB_PID=null -DARDUINO=103 -I/opt/arduino-1.0.3/hardware/arduino/cores/arduino -I/opt/arduino-1.0.3/hardware/arduino/variants/standard -I/mnt/home/TempStore/sketchbook/libraries/etherShield -I/mnt/home/TempStore/sketchbook/libraries/Time -I/mnt/home/TempStore/sketchbook/libraries/etherShield/utility /mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c -o /tmp/build8001797048211974753.tmp/etherShield/enc28j60.c.o
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c:18:55: error: WConstants.h: No such file or directory
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c: In function ‘enc28j60ReadOp’:
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c:46: warning: implicit declaration of function ‘digitalWrite’
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c:46: error: ‘LOW’ undeclared (first use in this function)
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c:46: error: (Each undeclared identifier is reported only once
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c:46: error: for each function it appears in.)
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c:60: error: ‘HIGH’ undeclared (first use in this function)
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c: In function ‘enc28j60WriteOp’:
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c:66: error: ‘LOW’ undeclared (first use in this function)
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c:73: error: ‘HIGH’ undeclared (first use in this function)
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c: In function ‘enc28j60ReadBuffer’:
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c:78: error: ‘LOW’ undeclared (first use in this function)
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c:92: error: ‘HIGH’ undeclared (first use in this function)
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c: In function ‘enc28j60WriteBuffer’:
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c:97: error: ‘LOW’ undeclared (first use in this function)
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c:109: error: ‘HIGH’ undeclared (first use in this function)
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c: In function ‘enc28j60PhyWrite’:
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c:149: warning: implicit declaration of function ‘delayMicroseconds’
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c: In function ‘enc28j60Init’:
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c:163: warning: implicit declaration of function ‘pinMode’
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c:163: error: ‘OUTPUT’ undeclared (first use in this function)
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c:164: error: ‘HIGH’ undeclared (first use in this function)
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c:170: error: ‘INPUT’ undeclared (first use in this function)
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c:173: error: ‘LOW’ undeclared (first use in this function)
/mnt/home/TempStore/sketchbook/libraries/etherShield/enc28j60.c:190: warning: implicit declaration of function ‘delay’
For one of my next projects I was thinking to start with a solar tracker for my camper. As far as I can see you are working with a tracker with one axe. I need to work with 2 axes. The motors I have already (old base of a automatic sattelite disk).
Is it possible to publish also the hardware you made (LDR circuit, H-bridge; ..)
The errors you got from compiling is most ethershield related, so you might have to convert the code to your own ethershield, or get the nuelectronic version of the ethershield. However, i plan to migrate the project to nabduino, or rasperry pi, so this might work better for you.
But, you can just remove the code related to the ethershield, and just use the tracker code. The ethershield is just used to visualize what's going on i the tracker. In the v1.0 the solarpanels performance will be logged to by the webserver
Yes All Good I understand now . Did not see the Version 0018 arduino mentioned anywhere
I have now had good results with Arduino 1.0.3 and I recommend it to you as the download has been simplified by the new Atmel tool chain including everything needed except Java JRE
No I said I understand what you have posted , not that I have it compiled . It does not compile without a lot more work I think for 1.0.3.
More I was suggesting you update some but thats your business.
congrats for the above success project . i need few clarification
1)how did you locate sun elevation angle. For this sun position algorithm (SPA) not work with Arduino Board
2) did you used Stoke of linear actuator to calculate sun elevation angle
3)can you share me the code .
4)what are the component you are using for the project.
techmind:
Finally i found the time to made the arduino based suntracker for my old diy solarpanels
I made a model with a gear motor fro polulo to simulate the actuator, use a ethershield from nuelectrictronics, and i found dc motor controller chip in a defect tape deck.
In the real life suntracker i have a actuator / polarmount from a scraped from a satellite parabol. In the real life suntracker i will make a suntracker+mppt charger+inverter shield with a mosfet H-bridge.
My first version of the suntracker is a beta model, based on a nuelectronic webserver sketch.
In the beta version the position counter(interrupt) is not functional.
If you can use the first beta suntracker sketch, you can grab sketch here:
** The site is in danish, please use google translate on the site, thanks **
Hope this version cover your needs for a suntracker better :%
This version of the suntracker (Release Candidate 1))will be used for a scrapped motor TV stand, and driven by a small gearmotor and a H-bridge mosfet driver stage. The Suntracker is for at 30 watt solarpanel, and will be placed an a caravan.