Web server for Classic using Arduino DUE

Started by dgd, March 12, 2015, 01:00:24 AM

Previous topic - Next topic

dgd

#75
I have had quite a few emails and there seems to be some confusion about how this Arduino based web server for MN Classic is designed to operate.

The web pages listed in previous postings are simply just HTML5 pages BUT they are designed to be served by the Arduino to a connecting web browser. The Arduino is talking to the Classic and retrieving the running data (Volts, Amps, Watts etc..) then communicating this data every second (or so) to the user's web browser, this is done by a type of HTML file (called an XML file) to just refresh the data readout parts of the display (the gauge dials and
data fields in the svg blue box). This means the whole page does not have to be refreshed every time running data updates (which would flicker the display and slow everything down)

For those that have downloaded the web pages, especially index.htm, and just clicked on the file, then because the file is an HTML5 file, your computer is executing it using your web browser.
This will draw the gauges display on your screen.
The reason there is no data values from your Classic being shown in the display is because your browser cannot find the one-second-refreshed-XML file named ajax_inputs which the index.htm is trying to load.

To create this file a program will be needed to read the required data from the Classic, either over ethernet or serial port. This needs to use modbus protocols to achieve this, then format the output into an XML file named ajax_inputs
Unfortunately this is not simple to do, but is very possible.
(Sorry I have run out of time to do this very soon).
Anyone interested can get a good start from RossW's ethernet/modbus
software newmodbus to extract data from the Classic.
AFAIK this is for Linux (unix) systems only, therefore should be straightforward to interface
to the gauges HTML5 page.

I hope this explains that the gauges page is not broken or has a bug, it is just not designed to run stand alone on a PC etc..

dgd
Classic 250, 150,  20 140w, 6 250w PVs, 2Kw turbine, MN ac Clipper, Epanel/MNdc, Trace SW3024E (1997), Century 1050Ah 24V FLA (1999). Arduino power monitoring and web server.  Off grid since 4/2000
West Auckland, New Zealand

ClassicCrazy

dgd
I just saw this info on getting data to / from Outback inverters without using the Mate . Is there anything else or anyone who has it figured out ?
https://hackaday.io/project/7624-outback-mate-reverse-engineering

Larry
system 1
Classic 150 , 5s3p  Kyocera 135watt , 12s Soneil 2v 540amp lead crystal for 24v pack , Outback 3524 inverter
system 2
 5s 135w Kyocero , 3s3p 270w Kyocera  to Classic 150 ,   8s Kyocera 225w to Hawkes Bay Jakiper 48v 15kwh LiFePO4 , Outback VFX 3648 inverter
system 3
KID / Brat portable

dgd

One of the otherpower forums had this link and mid last year I had emailed to me the packet structure of data between the MX60 and mate from someone who analysed the data stream.
Also in very early docs supplied with new MX60s there was an appendix that detailed the structure of data from the serial port, this was removed from the docs when mates appeared.
When I used a mate to look at MX60 data, from its rs232 port, I was disappointed to see the MX60 over reporting its power output. I tried 3 MX60 and they all did the same. A five year old FM80 was no better.
I came to the conclusion the MX60 may be a good mppt controller but  exaggerating power production by 10 to 15% was just fraudulent and invalidated any efforts to create an accurate power production web reporting system.
Figures that inaccurate were useless and IMHO makes OB controllers useless.
If this inaccuracy has always existed with OB controllers as opposed to being an age related degrading them I'm surprised they got away with it for so long.

dgd
Classic 250, 150,  20 140w, 6 250w PVs, 2Kw turbine, MN ac Clipper, Epanel/MNdc, Trace SW3024E (1997), Century 1050Ah 24V FLA (1999). Arduino power monitoring and web server.  Off grid since 4/2000
West Auckland, New Zealand

Westbranch

Quote from: dgd on January 10, 2016, 06:16:39 PM
If this inaccuracy has always existed with OB controllers as opposed to being an age related degrading them I'm surprised they got away with it for so long.

Without detailed knowledge and the wherewithal to get it,  how  would one ever know???
KID FW1811 560W >C&D 24V 900Ah AGM
CL150 29032 FW V.2126-NW2097-GP2133 175A E-Panel WBjr, 3Px4s 140W > 24V 900Ah AGM,
2 Cisco WRT54GL i/c DD-WRT Rtr, NetGr DS104Hub
Cotek ST1500 Inv  want a 24V  ROSIE Inverter
OmniCharge3024  Eu1/2/3000iGens
West Chilcotin 1680+W to come

dgd

#79
Quote from: Westbranch on January 10, 2016, 07:42:16 PM
Without detailed knowledge and the wherewithal to get it,  how  would one ever know???

You would never know unless for some reason you connected an ammeter on MX60 output and measured the real output current. Then the real power watts could be calculated and compared to what the MX displayed on its LCD screen.
This was unlikely to happen as people will believe the MX60 reported output is true.

It would be nice to think the later FM controllers were more accurate on reporting power output, I won't be buying one to find out  :)
The MN SLs are what I will be buying

dgd
Classic 250, 150,  20 140w, 6 250w PVs, 2Kw turbine, MN ac Clipper, Epanel/MNdc, Trace SW3024E (1997), Century 1050Ah 24V FLA (1999). Arduino power monitoring and web server.  Off grid since 4/2000
West Auckland, New Zealand

Halfcrazy

Yeah back when Robin and boB did the Outback controllers accuracy did not seem real important. The Outback would "Usually" read on the high side and that was actually not designed in but. The issue with all manufacturers is not knowing where the future is going. But we really need to strive for accuracy as data is one of the most important things now. 5 years hardly anyone hooked a pc to the solar system but today I bet it is a very high percentage.
Changing the way wind turbines operate one smoke filled box at a time

dgd

Its a while since I updated progress with DUE web server.
Here is the HTML5 page I am using for multiple Classic systems web monitoring page. I only obtained enough Classics recently to fully test this web page with four Classics including a 150SL (its serial modbus only no ethernet)
I was also able to test with a KID but the KID firmware needs additional data items made available via serial port for the web page to be useful.

dgd
Classic 250, 150,  20 140w, 6 250w PVs, 2Kw turbine, MN ac Clipper, Epanel/MNdc, Trace SW3024E (1997), Century 1050Ah 24V FLA (1999). Arduino power monitoring and web server.  Off grid since 4/2000
West Auckland, New Zealand

Resthome

John

10 x Kyocera KC140, Classic 150 w/WBJr, Link10 Battery Monitor, 850 AH @ 12v Solar One 2v cells, Xantrex PROwatt SW2000
Off Grid on Houseboat Lake Don Pedro, CA

ClassicCrazy

system 1
Classic 150 , 5s3p  Kyocera 135watt , 12s Soneil 2v 540amp lead crystal for 24v pack , Outback 3524 inverter
system 2
 5s 135w Kyocero , 3s3p 270w Kyocera  to Classic 150 ,   8s Kyocera 225w to Hawkes Bay Jakiper 48v 15kwh LiFePO4 , Outback VFX 3648 inverter
system 3
KID / Brat portable

dgd

Thanks John,
I'm also working with a friend who develops MS windows applications who is debugging my W10 program that collects Classic modbus data over ethernet and then sends it to the html5 page for display. I hope this will get finished soon  :)

Larry, I see you have an MS MPPT60 and a Classic. If you ever decide to try an Arduino web server then I have all the code to interface the MPPT60 so the HTML5 page above could have a line with the MPPT60 and show in gauges their combined output etc.. :D

dgd
Classic 250, 150,  20 140w, 6 250w PVs, 2Kw turbine, MN ac Clipper, Epanel/MNdc, Trace SW3024E (1997), Century 1050Ah 24V FLA (1999). Arduino power monitoring and web server.  Off grid since 4/2000
West Auckland, New Zealand

ClassicCrazy

dgd
Thanks for the offer on the Morningstar software.
I just took it off line though - installing updated system with Midnite controller and lithium batteries.
But I will try out your code on the Classics one of these days .
Larry

system 1
Classic 150 , 5s3p  Kyocera 135watt , 12s Soneil 2v 540amp lead crystal for 24v pack , Outback 3524 inverter
system 2
 5s 135w Kyocero , 3s3p 270w Kyocera  to Classic 150 ,   8s Kyocera 225w to Hawkes Bay Jakiper 48v 15kwh LiFePO4 , Outback VFX 3648 inverter
system 3
KID / Brat portable

Gabriel Tanasescu

I use the attached web server.
Also I want to use for Nidnite by Arduino .
This web  sever ia also Arduino dedicated .
OffGrid System =>2 x PIP-4048 ; 12 X PV- 240 W ; 9 X PV-260 W  ; MidNite 250 Clasic VOC ; 4 x 2 UCG-12-200Ah.

binkino

Quote from: dgd on February 21, 2016, 04:58:53 AM
Its a while since I updated progress with DUE web server.
Here is the HTML5 page I am using for multiple Classic systems web monitoring page. I only obtained enough Classics recently to fully test this web page with four Classics including a 150SL (its serial modbus only no ethernet)
I was also able to test with a KID but the KID firmware needs additional data items made available via serial port for the web page to be useful.

dgd

hey, also looks great :)
PV-OUTPUT: http://pvoutput.org/list.jsp?id=38617
Classic Lite 200 + Classic 200 + Easun ISolar-SMX-II-5.6KW + 12x240Wp + 12x255Wp + 2x10kWh LFP
http://a68k.de/Solar/Monitor_LC2.php