Overall Wiring Diagram, V2 (PDF)
Overall Wiring Diagram, V4 (PDF)
EnerMatic Controller Info
Remote Access Protocol
View Manual as PDF
Ample Power EnerMatic Controller, V2 and V4
Installation and Operating Instructions
Ample Power Models for 12/24/32/36/48 Volts November 9, 2011
This manual covers the V2 and V4 EnerMatic Controllers. (Note: there was no V3 EnerMatic.) The V4 incorporates new features:
The EnerMatic Controller, EMC, is a complex combination of hardware and software functions designed to manage an energy system comprised of battery storage and charge sources. Managed charge sources include an engine with one or more alternators, optional solar panels and wind generators.
User interface to the EMC is via a PC running a terminal emulator program such as HyperTerminal for Windows1. A second communications port is provided for interface to a host computer.
Because the EMC has been designed to manage energy systems with a wide variety of batteries, charge sources and engine control features, (no one-size fits all), initial set-up of operating parameters is non-trivial.
Adding to the complexity is the simple fact that batteries themselves are not as simple as most people believe. The EMC can be configured to optimally manage various battery technologies, but many people don't have the background experience to optimize battery performance. The major challenge that the designers of the EMC faced was how to provide the information and controls necessary to properly manage the energy system, but also provide protection against mis-use.
One result is a system of permissions or priviledges. All who use the terminal interface can view all of the data, (except passwords), but changing operational parameters require priviledge. This level of protection permits experienced users to change operating conditions, without the fear that those conditions will be modified by someone not authorized to do so.
The EMC has evolved as different customers have asked for special features. Some of those have become standard features. Because the EMC will continue to evolve, keeping detailed printed documentation up to date would be a major challenge. Instead the user interface is designed to be very self explanatory once the organizational foundation of the user interface is understood.
This document should be used with an EMC and terminal emulator. It'll make a lot more sense.
Behind the User Interface, UI
Most experienced programmers know that the User Interface for a given project takes the majority of programming time. Part of that is due to the way the UI is represented in computer code.
Early in the development it was decided to describe the UI in a simple text based set of files. A parser program would be written to read the text files and generate tables in C. The parser was written in Python, an elegant and easy to use high level language. It does error checking, making sure that every menu choice has a member to display or execute, and every element has a menu choice.
Managing permissions on operations was also greatly simplified, as was the process of saving configuration variables in external files and being able to read them back in.
The system allows new features to be added into the UI relatively painlessly. There's still the backend programming that needs to be done to implement any new feature, but at least the UI part of it is managed easily.
While the EMC is already highly functional, from time to time users may wish it did something new or different. Many new features are being evaluated or developed. Some of these will become standard if there is enough interest in them
User Interface Elements
There are three basic user interface elements.
A menu is a list of selections that can be made by entering the selection number followed by the ENTER key. Some menu selections implement a function directly, while other menu selections lead to another menu, or select a panel to be displayed.
Panels are aggregates of data items. For instance fields showing battery voltage, battery current, etc.
A form accepts entry of operating setpoints and configurations.
Form elements are used to configure and program setpoints. Each item on a form has a name, and when the cursor is on the line of a name, an Info line provides a description of that parameter.
User Interface Organization
As noted earlier, the EMC is a combination of hardware and software. At the user interface level it helps to think of individual devices that co-exist in or with the EMC.
For instance, the alternator regulator is a functional device that exists inside the EMC and is comprised of hardware and software elements. Batteries are a functional device, obviously external to the EMC. The engine is a functional device. So are solar panels and wind generators.
As much as possible, the user interface elements are designed to configure and operate the devices that make up the EMC system.
There is also a system device that has tentacles into some or all of the other devices. This is the pseudo device that manages passwords, priviledges and global configuration parameters.
Categories of Device Controls
By necessity there are different levels of interaction with any functional device. The levels generally fit in the categories below:
Not all devices have every one of these categories. Default factory settings suffice in many instances.
Configuration applies to optional modes of operation. For instance, stopping the engine when the batteries reach full charge is a configuration option which can be selected as True or False.
Another configuration option selects how the remote start/stop input works ...as a momentary switch action to start/stop, or as a toggle switch type action where engine run is one position and engine stop is another.
Reset of Historical Data
So-called historical data is accumlations of long-term value, for instance engine running hours, or lifetime Amp-hours consumed from the batteries. There are menu selections to reset these values.
An example of a setpoint is the absorption voltage that the alternator regulator needs to achieve. In a 12V application that setpoint might be 14.40 Volts.
Analog data can be scaled and conditioned before being read by an analog-to-digital converter. Precision components are used in all analog circuits so calibration beyond factory default values are rarely needed.
However, it is possible to program calibration constants to achieve correlation with an external meter.
Shunt size can be changed via calibration constants. That is the EMC can be told that an external shunt is 200 Amps, rather than the standard 400 Amps.
Operational data is displayed in so-called panels. The aggregation of parameters into panels is generally related to a device, however, some panels may show data values for more than one device.
Alarm Configuration and Setpoints
Some devices, for instance the battery bank and the engine have alarm detectors which are software functions that look for out-of-band parameters. For instance battery voltage above a given value is too high and an error should be raised, or other actions taken to resolve the condition.
Alarm detectors have to be enabled, and their limits must be set. In systems which incorporate external GSM modems or wired access to outside resources, alarm detectors may trigger text messages or emails to a responsible party who will take appropriate action.
Configuration and Setpoint Preservation
Configurations and setpoints are saved in non-volatile memory so they are preserved in the event power is removed from the EMC. Those values can also be saved externally in a file on a PC, and restored from that file if necessary.
It is highly recommended that the configuration and setpoint values be saved externally. In the event that an EMC is replaced by another unit, the file can be read into the new EMC to establish the same operating conditions.
As mentioned, priviledge levels are used to protect configurations, setpoints, etc., from being changed by unauthorized users. Every item in the user interface has an associated priviledge level.
There are currently eight priviledge levels. Each level can also perform all actions of priviledge levels below it. The EMC verifies that a user is authorized by priviledge level to modify operation setpoints.
Priviledge levels are:
Root can do anything. Only the engineers at Ample Power Company have root permissions.
A distributor of the EMC has the next highest priviledge level, followed by the dealer.
The Administrator has priviledges of those below it. One thing it can do is view and change the passwords of the levels below it.
The Systems Configurator can do all of the functions below it, but most importantly it can decide on the configuration of the system, for instance selecting how the engine will start and stop.
The Technician is allowed to change setpoints such as the alternator regulator absorption or float voltage.
It takes Operator priviledge level to start/stop the engine.
At the User level all data can be viewed, but nothing can be changed.
There are no default passwords installed at the factory for System Configurator and below. Pressing the ENTER key suffices for password entry for these levels. The owner of the system should enter passwords for these levels to provide protection.
There is an intersection between priviledges and programming forms for functional devices. That is, a form may have some values that require Configurator priviledge, and others that only require Technician priviledge. Items in the form can only be changed with an appropriate priviledge. A Technician can see how the system is configured, but is not allowed to change it.
Engine Configuration and Setpoints
There are many ways the engine can be configured to start and stop. In the process of starting and stopping, various signals are actuated in timed sequences, for example starting the fuel pump and glow plugs before activating the starter motor. There are several menus devoted to engine start/stop configuration and timing of the various signals.
There are also engine alarms to be enabled and alarm actions to be configured.
As an example, the form with the title of Program Start Configurations/Conditions has an element named start_vt_cfg. The Info line says, Enables Start on Volts/Time Conditions. Below the configuration variable are two more lines with names of start_vt_volts and start_vt_time.
The Info lines for these two variables are respectively, Start if Voltage Less Than this Trip Point and Start if Voltage Less Than Trip-Point for this Time (seconds).
These three variables are related by virtue of the shared start_vt_ in their names. One variable allows the engine to start if enabled, and the others provide the voltage below which to start, after the voltage stays below the setpoint for the specified time in seconds.
Engine Start Timing Configuration
Engine Start Timing Parameters are those that control the length of time that certain events take. For instance there is a fuel start time and a fuel stop time. All times are based on receipt of a start command. That is, a start time of 12 seconds means that the event should be started 12 seconds after being told to start. This is typical of the time when engine cranking begins. Prior to this, the glow plugs should have been activated, and typically the glow plugs continue to be activated during the cranking period. All the parameters can be programmed as necessary.
One noteworthy set of parameters are the fuel pump start and stop. Typically the fuel pump will be started early in the starting process. Some engines, such as the EA-330 don't have an internal fuel pump, so the fuel must either be gravity fed, or continuously fed by a fuel pump.
Other engines have a cam driven diaphram fuel pump, but an electric fuel pump is often included in the system to be used as a primer pump. It's handy to use after changing fuel filters to bleed the system of air. It can also be used as a primer pump each time the engine is run. If left running all the time the engine operates then lots of fuel would be pumped through the system, probably wearing out the pump. (With a vane pump this feature can be used as a diesel polishing system.)
The fuel pump can be stopped by programming a time into the fuel stop variable. If it is 0, then it will run continuously.
Engine Warm-Up and Cool-Down Cycles
The engine should be warmed up for 1-5 minutes before turning on the alternator. This is controlled via the programmable value for engine warm up time.
There is a corresponding cool down period that can be programmed in the engine stop timing form. The alternator is turned off and the engine is allowed to run during the cool down period.
(Sometimes, however, the engine must be stopped immediately. Thus there is a stop now command.)
As you walk through the menus and select some items a response will be displayed. The name of a function will be displayed along with the response from it.
The same funtions can be called via the RAP interface. They do have to be embedded in the RAP protocol to be executed. The RAP Protocol document can be found at http://www.amplepower.com/wire/index.html. The RAP port is designed to be used with a computer operating a special interface program, but, however tedious, can be used with a terminal interface by copying and pasting from a file with RAP strings.
As of July, 2008, the executable functions are:
Fatal Error Messages
Bug free software of any complexity beyond a few pages of code doesn't exist. While firmware is not shipped with known bugs, there is still a possibility that some unexpected edge case of operation will stop the processor from functioning normally ...a fatal error.
If the processor were to remain halted, many damaging and compounding events might occur. Rather than let this happen, fatal errors are first trapped and outputs are put at a default state. Next, information identifying the trap is written into non-volatile memory.
After the location of the fatal error is preserved, the processor re-boots ...starts at the beginning of code as if power was just applied.
Fatal error messages can be read by any user and reported to the Ample Power support team.
The EMC provides an output signal, named THROB that alternates on and off at a one second interval. Loss of this signal indicates that the EMC processor has stopped running.
It is possible to monitor this signal with an external watchdog power control circuit that would de-power the EMC for a few seconds if the throb signal stop.
When the watchdog circuit re-powers the EMC it should wait a few seconds before monitoring the throb signal again.
The EMC can be used to run the User Interface with just power and the serial ports wired.
Refer to the proper wiring diagram based on the EnerMatic version. The latest version is the V4.
Logic Signal Levels
There are signals to control external devices. These signals have been isolated from ground in the EnerMatic Controller to eliminate signal switching from interfering with analog measurements, such as battery current.
A simplified circuit diagram is shown below. The list on the right side of the circuit has the names of the signals using the circuit.
Overall Wiring Diagram
Many users incorporate the EnerMatic Controller in their own systems, using different subsets of features and connections. A drawing showing all possible systems would be an undecipherable set of dashed lines for options and many notes and clauses.
There is an overall drawing made for a specific system that can be used with the drawings presented above as a basis of a custom diagram. See Overall Wiring Diagram available from the website.
Required and Recommended Wiring
The many functions of the EnerMatic Controller necessarily requires a lot of wires. Since not all functions may be used, this section lists the minimum required wiring, as well as recommended optional wires.
Make sure that all wires labelled required are connected as shown on the wiring diagram.
Note that connectors P0 through P6 us #16 AWG wire.
Connector P0 has both serial ports, P0 and P1. Port 0 presents the operating menu compatible with a VT100 terminal. Terminal emulator programs are available for all major and most minor operating systems.
Note that serial ports are electrically isolated from all voltages and grounds, as well as each other.
Port 1 provides the RAP interface to communicate with a computer.
Connector P1 has the measurement inputs that are electrically common to the Energy Battery. Note that the Energy Battery and the engine starter battery are electrically isolated unless connected externally to the EnerMatic Controller.
P2 provides power from the Energy Battery to the EnerMatic Controller.
P3 is reserved for future expansion.
P4 is used for control inputs and outputs.
P5 is the interface to engine senders/sensors. Note that switches and senders are passive, two-wire devices and are not polarity sensitive. The wiring required is factory installed.
P6 supplies 12V power to the EnerMatic Controller which is used to operate measurement circuits and status indicators.
High current control signals are interfaced via brass studs on one side of the EnerMatic Controller. The studs are named according to a nominal function. Depending on the engine and the system around the engine, wiring functions will be different.
Manual Control Box
It is recommended to operate the EnerMatic Controller using a computer with one of the two serial ports. A computer is required to program operating parameters such as battery capacity.
In simple systems it is possible to operate the unit manually.
The Manual Control Box has two switches and four LEDs. One switch activates the Emergency Stop signal while the other switch provides a remote start command.
The Stop switch and the Run switch must be in the up position for the engine to run.
A Throb LED is provided that indicates the processor is functioning.
An Error LED is also present.
An Error condition can be cleared with the Manual Control Box using the two switches in a combinatorial pattern. The sequence starts with both switches off, in down jposition. Now follow these steps: Stop On; Run On; Stop Off; Run Off. Allow about 2 seconds at each step.
If the Error LED goes out, but comes back on, then a computer will be required to find out what error condition is being raised.
Caveats and Explanations
Given below is a list of cautions and explanations that may save installation or operational mistakes.
Polarity Sensitive Field Connections
Most alternators do not have polarity sensitive field windings. However, alternators with internal magnets to boost efficiency are polarity sensitive. If wired backwards, alternator output will be much less than normal.
The brass stud on the EnerMatic Controller labeled ALT_GND, (required) should have two ring terminals on it: one is the field return from the alternator, and the other goes to the negative of the energy battery.
Water Resistant Plugs
To provide strong resistance to environmental insults, the EnerMatic Controller is sealed and uses watertight connectors. Use of 16 AWG wire is recommended. A smaller gauge will not seal around the wire.
The gaskets used with the connectors is highly resistant to water indefinitely and diesel fluid for short duration. Submersion in diesel will ruin the gaskets. (Yes, it has happened.)
The connectors fit and latch snugly into the EnerMatic Controller. It can be difficult to unlatch the connectors. Pushing slight helps because it takes pressure off the latch.
Do not pull on the wires to remove a connector.
Connector pins that are not seated properly can cause a lot of time to be spent troubleshooting. Intermittent issues may complicate matters.
Be sure to seat connector pins. They will snap into place and can then only be removed with a pin release tool.
It is recommended that the EnerMatic Controller not be mounted to the engine assembly. Mount in a cool, dry location.
Alternator belt alignment is always crucial. V-belts that are not perfectly aligned will wear faster when mis-aligned.
Flat belts with automatic tensioners are used on some diesel battery chargers. There may be more grooves in the sheaves than on the belt. Make sure to select grooves to achieve alignment.
Power for signals on the brass studs is derived from a wire on the starter lug. Do not remove this ring terminal.
Do not connect the alternator negative to any place other than the alternator shunt. The EnerMatic Controller uses power limiting to prevent engine stalling from overload. That is, alternator current is multiplied by battery voltage to determine the power being generated and the Controller modulates the field voltage to stay under the power limit.
The power limit is programmable. At low battery voltage, more alternator current is allowed, providing a faster charge than simple current limiting.
Support via email is available for the first 90 days. After that period, support via email can be provided under contract. Alternately, there is free support via an Internet forum via this link: http://www.amplepower.com/support/index.html.