Kufy-GEN-Project

From ArduinoInfo
Jump to: navigation, search

Generator Automatic Controls Project

Collecting thoughts, materials, designs for an automatic Generator Control for the Nigerian environment

PARTS for generator controls

MEASUREMENT DEVICES

Media:ACS-0712.pdf

Media:Wcs1700.pdf

Info on current measurement:

BATTERIES

LINKS:

https://www.google.com/search?lr=&as_qdr=all&ei=4cUnXfH_KOym_QbYqa-wCQ&q=best+deep+cycle+battery+in+nigeria&oq=best+deep+cycle+battery+in+nigeria https://jiji.ng/272-deep-cycle-batteries/12v

CHARGE Controllers

This is one I use on 3 systems here: Media:CamperPowerUnit-109821E_english_manual.pdf

TRANSFER RELAYS

TRANSFER SWITCHES There are two considerations, but the FIRST one is critical: It needs to be virtually IMPOSSIBLE for the generator to "Feed Back" into the power line. If it did, there are BAD things that can happen: (1) DANGER to other people, especially Power Company workers, who thought the circuit was off. and (2) overload of the generator and possible damage due to not being synchronized with other power sources on this line. You need a relay system that CAN NOT connect the generator to the external power line, even if it has a fault. So the Solid State Relays "would be great" but they can fail, and thy usually fail 'shorted'... So you need a relay / contactor that is "Form C" which would also be called "Double Pole, Double Throw"..

Relay Contact "Form"

FormC.jpg FormZ.jpg FormCfromZ.jpg


Examples of possible Transfer Relays - LINKS:

(1) THIS is a 100 Amp rated relay with ONE "Form Z" contact. It would take TWO of these to create a "2C" or "Double pole double throw" relay.

//www.aliexpress.com/item/32888156121.html

NOTE: A relay with TWO "form Z" contacts would be good.


(2) THIS is a 80 Amp rated relay with two "Form Z" contacts. (Type JQX-62F-2Z ) This may be the best choice. This is equivalent to but better that a "Double Pole Double Throw". //www.aliexpress.com/item/32805059192.html

JQX-62F.jpg


(3) THIS is a 80 Amp rated relay with two "Form C" contacts. So it is "Double Pole Double Throw". It is physically for "DIN Rail Mount" so that's not necessary. //www.aliexpress.com/item/477268399.html

Nigerian Power - Generators and Controls

Power in Home and businesses 230V 50 Hz. 1 Phase to smaller homes, 3 phase to businesses.

Typical home: 230V at ??? current??


https://www.huffingtonpost.com/timi-soleye/why-nigeria-generates-so-_b_5695091.html

https://www.economist.com/news/middle-east-and-africa/21693971-nigeria-has-about-much-electricity-edinburgh-problem-powerless

https://www.researchgate.net/publication/303544564_The_Erratic_Electric_Power_Supply_in_Nigeria_Causes_and_Remedy

https://en.wikipedia.org/wiki/Nigerian_energy_supply_crisis


THE DESIGN

NOTES:

VERSION/Editor: 1.05 TK

DATE/TIME: 15 Jul 2019 03:44 NT

SOME BEGINNER STATE MACHINES?

CELL_POWER_MANAGER (highest level)

loop: {

CheckSensors // Update global variables

CheckCommunications // Receive new communications. Update display as needed, Send communications as needed

BatteryManager //Monitors Battery, SOC, decides if GeneratorPowerRequested is TRUE/FALSE

Generator_Engine_Manager // Maintains the STATE of the GEN. Starts, Stops, etc. Monitors GeneratorPowerRequested

(Check schedule?)

MakeDecisions // Based on overall system: Data Variables, STATES of other sub-managers

TakeActions // Set variables to new values, Change STATE of sub-managers

}

Battery_MANAGER

NOTE: Includes Charger status and control

Check_SOC // reads current Battery voltage, other parameters as available

CheckLoadStatus

if (SOC < Setpoint) // Needs both high and low SOC values

  set Generator_Power_Requested TRUE

ELSE

  set Generator_Power_Requested POWER  FALSE

CheckBatteryHealth

(Do whatever)

GENERATOR/ENGINE MANAGER

STATES:

StoppedNormal

 IF GeneratorPowerRequested set State to Starting

Starting //(Cranking, checking for sucess)

Start_Success


Start_Failure // Wait time, then change state to Starting. Too may attempts, set StartFailure


Running_Startup // Warmup


Running_Normal // Load is applied

 IF GeneratorPowerRequested is FALSE, set State to StoppingNormal


Stopping Normal // Load disconnected, CoolDown


/*---( Fault States )------*/

Stopping_Low_Fuel // Send alarm


Stopped_LowFuel


Stopping_Electrical_Fault


Stopped_Electrical_Fault

GLOBAL DATA DEFINITIONS

(StateVariable for each State Machine)

Global Status variables like GeneratorPowerRequired

Current Fuel Level

PowerSourceStatus (Battery/Generator/Both)

GLOBAL CONSTANTS

Things for a specific installation, like:

Fuel Tank Capacity

Battery AH rating

Nominal Cell System power load

Fuel Level Low Alarm Setpoint

Battery Temperature High Alarm Setpoint

(Engine Parameters) - MaxCrankingSeconds - Start_Failure_Retry_Delay - Start_Attempts_allowed

Diagram examples

Power Project FSM.png

currently working on a more concise State Diagram