Skip to content

Instantly share code, notes, and snippets.

@kenwebb
Last active June 10, 2021 16:37
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kenwebb/0b702366c20b4fa09641d1d6f50652aa to your computer and use it in GitHub Desktop.
Save kenwebb/0b702366c20b4fa09641d1d6f50652aa to your computer and use it in GitHub Desktop.
Solar Power
<?xml version="1.0" encoding="UTF-8"?>
<!--Xholon Workbook http://www.primordion.com/Xholon/gwt/ MIT License, Copyright (C) Ken Webb, Thu Jun 10 2021 12:37:04 GMT-0400 (Eastern Daylight Time)-->
<XholonWorkbook>
<Notes><![CDATA[
Xholon
------
Title: Solar Power
Description:
Url: http://www.primordion.com/Xholon/gwt/
InternalName: 0b702366c20b4fa09641d1d6f50652aa
Keywords:
My Notes
--------
June 9, 2021
In this workbook, I explore the idea that possibly, we should install a small Solar Power system in our home.
TODO:
- add latitude to each City
- make Cloud an active object that randomly restricts the Sunlight
- this model is only a simple starting point
References
----------
() search "solar power" "diy solar power"
() a book I own: Meinel and Meinel, Applied Solar Energy - An Introduction, 1976
() https://www.canadiantire.ca/en/outdoor-living/solar-panels-accessories/solar-panels.html
() https://www.canadiantire.ca/en/pdp/coleman-150w-12v-multi-purpose-crystalline-solar-panel-0112055p.html#srp
- bottom of this page has a short video: How to Choose Solar Panel System
Use the sun to charge your batteries and power your electrical devices.
Learn how to power your cottage, shed, boat or RV with a basic DIY solar panel system using these helpful steps.
- off-grid or grid-tied? we want off-grid, which uses batteries to store power
- need 3 main components: Panel, Charge Controller (CC), Battery
- Panel converts sunlight into electricity
- CC regulates voltage and current
- 12v Battery stores electricity
- types of panels
- crystalline more common and efficient
- amorphous more useful in indirect or indoor light
- a panel can generate 2.5 to 150 watts (Canadian Tire panels)
- rule of thumb to determine requirement: sum the devices and double that
- recommended 12v batteries: SLA, GEL, AGM; best are deep-cycle or marine
- AGM is good in cold weather
- Hub connects several panels together
- takes input from multiple panels, and outputs to one CC
- to power AC devices, need Inverter
- Inverter can generate simple sine-wave-like output, or pure sine wave for electronic devices
() https://en.wikipedia.org/wiki/Solar_power
() https://en.wikipedia.org/wiki/Solar_energy#Electricity_production
() https://en.wikipedia.org/wiki/Solar_cell
theory
() https://en.wikipedia.org/wiki/Solar_panel
more practical information
A solar panel, or photo-voltaic (PV) module, is an assembly of photo-voltaic cells mounted in a framework for installation.
Solar panels use sunlight as a source of energy to generate direct current electricity.
A collection of PV modules is called a PV panel, and a system of panels is an array.
Arrays of a photovoltaic system supply solar electricity to electrical equipment.
() https://en.wikipedia.org/wiki/Solar_panel#/media/File:From_a_solar_cell_to_a_PV_system.svg
() https://commons.wikimedia.org/wiki/File:From_a_solar_cell_to_a_PV_system.svg
excellent
<PvSystem>
<!--
Electricity Meter
AC Isolator
Fusebox
Inverter
Battery
Charge Controller
Generation Meter
DC Isolator
Cabling
Mounting
Tracking System
-->
<SolarArray>
<SolarPanel multiplicity="10">
<SolarModule multiplicity="4">
<SolarCell multiplicity="40"/>
</SolarModule>
</SolarPanel>
</SolarArray>
</PvSystem>
() https://en.wikipedia.org/wiki/Photovoltaic_system
A photovoltaic system, also PV system or solar power system, is a power system designed to supply usable solar power by means of photovoltaics.
It consists of an arrangement of several components, including solar panels to absorb and convert sunlight into electricity,
a solar inverter to convert the output from direct to alternating current,
as well as mounting, cabling, and other electrical accessories to set up a working system.
It may also use a solar tracking system to improve the system's overall performance and
include an integrated battery solution, as prices for storage devices are expected to decline.
Strictly speaking, a solar array only encompasses the ensemble of solar panels, the visible part of the PV system,
and does not include all the other hardware, often summarized as balance of system (BOS).
() https://en.wikipedia.org/wiki/Photovoltaic_system#Standalone
A stand-alone or off-grid system is not connected to the electrical grid.
Standalone systems vary widely in size and application from wristwatches or calculators to remote buildings or spacecraft.
If the load is to be supplied independently of solar insolation, the generated power is stored and buffered with a battery.
A charge controller may be incorporated in the system to avoid battery damage by excessive charging or discharging.
In small devices (e.g. calculators, parking meters) only direct current (DC) is consumed.
In larger systems (e.g. buildings, remote water pumps) AC is usually required.
To convert the DC from the modules or batteries into AC, an inverter is used.
In agricultural settings, the array may be used to directly power DC pumps, without the need for an inverter.
() https://en.wikipedia.org/wiki/Microgeneration
Microgeneration is the small-scale generation of heat and electric power by individuals, small businesses and communities to meet their own needs,
as alternatives or supplements to traditional centralized grid-connected power.
Although this may be motivated by practical considerations, such as unreliable grid power or long distance from the electrical grid,
the term is mainly used currently for environmentally-conscious approaches that aspire to zero or low-carbon footprints or cost reduction.
() https://en.wikipedia.org/wiki/Balance_of_system
The balance of system (BOS) encompasses all components of a photovoltaic system other than the photovoltaic panels.
This includes wiring, switches, a mounting system, one or many solar inverters, a battery bank and battery charger.
Other optional components include ...
() https://en.wikipedia.org/wiki/Microbial_fuel_cell
a different way of getting electricity from the sun
() https://www.instructables.com/DIY-OFF-GRID-SOLAR-SYSTEM/
() https://www.instructables.com/howto/solar/
() https://www.wikihow.com/Category:Solar-Energy
() https://makezine.com/?s=solar+power
() https://www.pveducation.org/
() https://www.pveducation.org/pvcdrom/welcome-to-pvcdrom
Photovoltaics is a most elegant energy source.
This site is an electronic book on PV.
It can either be read from start to finish as a course on photovoltaics or used as a reference.
This project started out as an electronic textbook, distributed on CDs and so we have kept the ungainly title of PVCDROM.
Stuart Bowden and Christiana Honsberg work at the Solar Power Labs at ASU (http://pv.asu.edu/)
() http://pv.asu.edu/
() https://www.wikihow.com/Select-a-Solar-Charger
Last Updated: August 1, 2020
Some common solar panel brands include Sunlinq, Lenmar and Goal Zero.
() https://www.mec.ca/en/product/6013-466/Venture-30-With-Nomad-10-Solar-Bundle?colour=NOC02
Goal Zero Venture 30 With Nomad 10 Solar Bundle, 6013-466
Available pricesClearance price $229.99 $229.99
This kit combines the powerful Venture 30 battery pack with the efficient Nomad 10 solar panel, supplying you with power (and a way to store it).
Each member of this dynamic duo can go it alone, but combined, they give you a way to charge just about any electronic device from, well, just about anywhere.
() https://www.mec.ca/en/product/5055-475/Boulder-50-Solar-Panel?colour=NOC02
Goal Zero Boulder 50 Solar Panel, 5055-475
Available pricesClearance price $199.99 $199.99
Upgrade your road trip rig with a rooftop panel. This large rigid panel works for stationary set-ups, like bolted to your van or used for off-grid power at a cabin or basecamp.
Charges Goal Zero Yeti, Sherpa and similar powerbank systems.
() https://www.bestbuy.ca/en-ca/category/solar-panels-chargers/33389
() search: solar charge controller 12v
() https://www.aussiebatteries.com.au/blog/beginners-guide-to-solar-charge-controllers/
() https://www.amazon.ca/s?k=Solar+charge+controller+12V
() https://www.amazon.ca/s?k=solar+panel+kit
() https://www.amazon.ca/ECO-WORTHY-100W-Solar-Panel-Battery/dp/B091CXDXKB
() https://www.amazon.ca/stores/page/D8882AD3-3EA3-4C9E-A2EE-787F4A084006
ECO-WORTHY Solar Panel Kit 100 Watt 12 Volt Off Grid Solar System with 20A 12V/24V LCD Display Positive Ground Solar Charge Controller for ...
$184.99
]]></Notes>
<_-.XholonClass>
<PhysicalSystem/>
<Sun/>
<Earth/>
<City/>
<Cloud/>
<PvSystem/>
<Panel/>
<ChargeController/>
<Battery/>
<Hub/>
<Inverter/>
<Light>
<Sunlight/>
</Light>
<Electricity>
<Dc/>
<Ac/>
</Electricity>
</_-.XholonClass>
<xholonClassDetails>
<Sun>
<port name="Sunlight" connector="../Earth/City/PvSystem/Panel"/>
</Sun>
<Panel>
<port name="Dc" connector="../ChargeController"/>
</Panel>
<ChargeController>
<port name="Dc" connector="../Battery"/>
</ChargeController>
</xholonClassDetails>
<PhysicalSystem>
<Sun energy="1000000"/>
<Earth>
<City roleName="Ottawa">
<Cloud/>
<!-- a simple one-panel system -->
<PvSystem>
<Panel/>
<ChargeController/>
<Battery energy="0"/>
<Hub multiplicity="0"/>
<Inverter multiplicity="0"/>
</PvSystem>
</City>
</Earth>
</PhysicalSystem>
<Sunbehavior implName="org.primordion.xholon.base.Behavior_gwtjs"><![CDATA[
var me, beh = {
postConfigure: function() {
me = this.cnode.parent();
me.println(this.toString());
console.log(me)
},
act: function() {
me.Sunlight.msg(101, 1, me);
me.energy--;
me.println(this.toString());
},
toString: function() {
return me.xhc().name() + " energy:" + me.energy;
}
}
//# sourceURL=Sunbehavior.js
]]></Sunbehavior>
<Panelbehavior implName="org.primordion.xholon.base.Behavior_gwtjs"><![CDATA[
var me, beh = {
postConfigure: function() {
me = this.cnode.parent();
me.println(this.toString());
console.log(me)
},
processReceivedMessage: function(msg) {
me.println(me.xhc().name() + " received msg: " + msg.data);
me.Dc.msg(102, msg.data, me)
}
}
//# sourceURL=Panelbehavior.js
]]></Panelbehavior>
<ChargeControllerbehavior implName="org.primordion.xholon.base.Behavior_gwtjs"><![CDATA[
var me, beh = {
postConfigure: function() {
me = this.cnode.parent();
me.println(this.toString());
console.log(me)
},
processReceivedMessage: function(msg) {
me.println(me.xhc().name() + " received msg: " + msg.data);
me.Dc.msg(103, msg.data, me)
}
}
//# sourceURL=ChargeControllerbehavior.js
]]></ChargeControllerbehavior>
<Batterybehavior implName="org.primordion.xholon.base.Behavior_gwtjs"><![CDATA[
var me, beh = {
postConfigure: function() {
me = this.cnode.parent();
me.println(this.toString());
console.log(me)
},
act: function() {
me.println(this.toString());
},
processReceivedMessage: function(msg) {
me.println(me.xhc().name() + " received msg: " + msg.data);
me.energy++;
},
toString: function() {
return me.xhc().name() + " energy:" + me.energy;
}
}
//# sourceURL=Batterybehavior.js
]]></Batterybehavior>
<SvgClient><Attribute_String roleName="svgUri"><![CDATA[data:image/svg+xml,
<svg width="100" height="50" xmlns="http://www.w3.org/2000/svg">
<g>
<title>Sun</title>
<rect id="PhysicalSystem/Sun" fill="#98FB98" height="50" width="50" x="25" y="0"/>
<g>
<title>Panel</title>
<rect id="PhysicalSystem/PvSystem/Panel" fill="#6AB06A" height="50" width="10" x="80" y="0"/>
</g>
</g>
</svg>
]]></Attribute_String><Attribute_String roleName="setup">${MODELNAME_DEFAULT},${SVGURI_DEFAULT}</Attribute_String></SvgClient>
</XholonWorkbook>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment