Autonomous Power Interchange System (APIS)
APIS features
By accommodating P2P energy sharing between distributed batteries, it is possible to build a microgrid that utilizes variable renewable energy(VRE) as the main power source and enhances the resilience of the power system. These distributed batteries absorb fluctuations of VRE generation and improve community self-sufficiency by balancing supply and demand within the community.
Click here for details
Technoogy
Physical Peer to Peer(PP2P) energy sharing
This technology achieves a fixed amount of energy sharing between batteries by constant current control. It offset a shortage of one battery with delivering the necessary amount from a surplus of other battery. It is possible to send a fixed amount of power between specific users (batteries), which was difficult to realize by the voltage control, and it is possible to transact PP2P energy trading between users on the condition of the required energy amount and energy price.
Autonomous distributed control
Software with the same functions is installed in each battery system, and the software implements energy sharing according to the transaction conditions (time window, energy amount, energy price, etc.) of each battery system. It is a flexible energy trading system that allows various transaction conditions to be set for each battery system and that the conditions can be dynamically changed for each time window.
Software
The software that realizes the above technology and makes it possible to easily construct a DC microgrid is released.
▼ Software required to simulate energy exchange using a hardware emulator
- apis-main
Software installed on each node to provide bi-directional energy exchange with autonomous decentralized control
See apis-main's Documentation for more information. - apis-main_controller
Software that visualizes the status of apis-main installed on each node and the status of energy exchange between nodes
See apis-main_controller's Documentation for more information. - apis-web
Software that acquires necessary information for visualization from apis-main and provides it to apis-main_controller
See apis-web's Documentation for more information. - apis-emulator
Software to emulate hardware such as DC/DC converters and batteries
See apis-emulator's Documentation for more information. - apis-service_center (Added on December 24, 2020)
Software to provide information required by the administrators and users of clusters constructed of apis-main services installed in each unit.
See apis-service_center's Documentation for more information. - apis-ccc (Added on December 24, 2020)
Software to uploade information that is related to energy sharing to apis-service_center.
See apis-ccc's Documentation for more information. - apis-log (Added on December 24, 2020)
Software to receive information from apis-main by multicast via a communication line and storing that information in a database.
See apis-log's Documentation for more information. - apis-tester (Added on December 24, 2020)
Software to test and evaluation of apis-main.
See apis-tester's Documentation for more information.
Installation
[Operating Environment]
The above software has been tested on the following operating systems.
- Ubuntu 18.04, 20.04
- CentOS 7, 8
- macOS Catalina, Big Sur
* Virtual environments are not supported.
[Preparation]
It is assumed that the necessary software are installed.
The following is an example of an advance preparation for Ubuntu 18.04.
- Install the JDK if it's not already installed.
- Python3.6.9 or later is required.
- Sqlite3.8.3 or later is required. (CentOS 7)
$ sudo apt install git
$ sudo apt install make
$ sudo apt install maven
$ sudo apt install groovy
$ sudo apt install python3-venv
$ sudo apt install python3-pip
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
$ echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list
$ sudo apt install mongodb-org
[APIS related software bach installation]
Install all of the above APIS related software at one time.
See each software repository for the individual installation and execution of each software.
$ git clone https://github.com/hyphae/APIS.git
$ cd APIS
$ make build
- If an error occurs with the "make build" or "make run" command, open the terminal again and run it.
Running
Run all of the above APIS related software at once.
$ make run
After running each software, access the followings in your browser to display.
0.0.0.0:4382/ -> apis-main_controller
0.0.0.0:4390/ -> apis-emulator
0.0.0.0:10000/ -> apis-tester
http://127.0.0.1:8000/static/ui_example/staff/visual.html -> apis-service_center (account/pwd = admin/admin)
The following picture is apis-main_controller. Flash an cache once.
Simulate energy exchange with setting Global Mode to "Run".
Stopping
Stop all of the above APIS related software at once.
$ make stop
▼ Software and hardware information required for energy exchange using actual DC/DC converters and batteries
Use apis-dcdc_batt_comm instead of apis-emulator.
- apis-dcdc_batt_comm
Sample device driver to control DC/DC converters and batteries
See apis-dcdc_batt_comm's Documentation for more information. - apis-build_version_up_system
This tool clones all of the software needed to build the APIS evaluation environment from GitHub/hyphae in a single batch, builds the software, generates the various configuration files required for APIS operation according to the configuration file, and then installs all of the software on multiple nodes. See apis-build_version_up_systems's Documentation for more information. - apis-hw-info
Hardware reference information
See apis-hw-info's Documentation for more information.