47 skills found · Page 1 of 2
VR-25 / AccAdvanced Charging Controller
geeekpi / UpsplusUPS Plus is a new generation of UPS power management module. It is an improved version of the original UPS prototype. It has been fixed the bug that UPS could not charge and automatically power off during work time. It can not only perform good battery power management, but also provide stable voltage output and RTC functions. At the same time,it support for FCP, AFC, SFCP fast charge protocol, support BC1.2 charging protocol, support battery terminal current/voltage monitoring and support two-way monitoring of charge and discharge. It can provide programmable PVD function. Power Voltage Detector (PVD) can be used to detect if batteries voltage is below or above configured voltage. Once this function has been enabled, it will monitoring your batteries voltage, and you can control whether or not shut down Raspberry Pi via simple bash script or python script. This function will protect your batteries from damage caused by excessive discharge. It can provide Adjustable data sampling Rate. This function allows you to adjust the data sampling rate so that you can get more detailed battery information and also it will consume some power. The data sampling information can communicate with the upper computer device through the I2C protocol. UPS Plus supports the OTA firmware upgrade function. Once there is a new firmware update, it is very convenient for you to upgrade firmware for UPS Plus. The firmware upgrade can be completed only by connecting to the Internet,and execute a python script. Support battery temperature monitoring and power-down memory function. UPS Plus can be set to automatically start the Raspberry Pi after the external power comes on. The programmable shutdown and forced restart function will provide you with a remote power-off restart management method. That means you don’t need to go Unplug the power cable or press the power button to cut off the power again. You can set the program to disconnect the power supply after a few seconds after the Raspberry Pi is shut down properly. And you can also reconnect the power supply after a forced power failure to achieve a remote power-off and restart operation. Once it was setting up, you don't need to press power button to boot up your device which is very suitable for smart home application scenarios.
septillion-git / QC2ControlSet the voltage of a Quick Charge 2.0 source via the Arduino.
PocketConcepts / Pocket PSUA variable current & voltage PSU with 3S lipo charging, balancing, and protection circuit using PPS.
adilkhan095 / SOC Estimation Of Li Ion Battery Using Kalman FilterThe State of charge (SOC) is an important parameter to find the capacity of state. It is equivalent to the fuel gauge for a battery pack in a battery electric vehicle. There are different general methods to precisely estimate the battery SOC using voltage, current integration and pressure but each has its certain drawbacks. Accurate estimation of SOC is one of the major issues in a Battery Management System. To overcome these shortcomings, a Kalman filter is used which is able to adjust to the battery voltage and coulomb counting in real time. To estimate the SOC in both the batteries, an RC circuit is considered and its parameters are calculated and rewritten in state space form which in turn is converted to discrete time form to estimate SOC.
StavrosOrf / EV2Gym PI TD3Physics-Informed Reinforcement Learning for Smart V2G EV Charging and Distribution Network Voltage Support.
Michael-DeSando / BMSThis is a battery management system application that uses the MSP430FR5969 MCU and BQ76PL536 Evaluation Board to monitor cell voltage, pack voltage, state of charge, pack temperature, and cell balancing.
signaloid / Signaloid Demo Batteries StateOfChargeEstimationUncertainty estimation of the state of charge for a Lithium-ion battery (Panasonic CGR-17500) calculated using the direct voltage mapping method based on the discharge curve of the battery.
MartinD-CZ / Lithium Battery Utility BoardA small board containing charging, protection, load sharing and voltage boost circuitry.
terencetaothucb / Pulse Voltage Response GenerationPulseBat dataset for retired battery reuse and recycling decision making. We open-source the collected PulseBat dataset for pulse voltage response generation of the retired batteries across random retirement conditions, i.e., state of charge (SOC) conditions, facilitating downstream SOH estimation tasks.
Dev97633 / Fastcharge Next⚡ Magisk Module to boost charging speed with smart tweaks.
AB-Coder96 / ThreephaseOPFConvex three-phase optimal power flow (OPF) framework with PVs and EV charging stations, modeling cross-phase inverter operation to reduce losses, cost, and voltage imbalance in unbalanced distribution networks.
ssr-diaries / Development Of Autonomous Downscaled Model Car Using Neural Networks And Machine LearningMachine learning using convolution neural network Required: raspberry pi pi cam compatibile rc car motor driver l293d Please create the respective files: forward idle left right reverse optimized_thetas This project aims to build an autonomous rc car using supervised learning of a neural network with a single hidden layer. We have not used any Machine Learning libraries since we wanted to implement the neural network from scratch to understand the concepts better. We will be referring the DC motor controlling the left/right direction as the front motor and the motor controlling the forward/reverse direction as the back motor. Connect the BACK_MOTOR_DATA_ONE and BACK_MOTOR_DATA_TWO GPIO pins(GPIO17 and GPIO27) of the Raspberry Pi to the Input pins for Motor 1(Input 1, Input 2) and the BACK_MOTOR_ENABLE_PIN GPIO pin(GPIO22) to the Enable pin for Motor 1(Enable 1,2) in the L293D Motor Driver IC. Connect the Output pins for Motor 1(Output 1, Output 2) of the IC to the back motor. Connect the FRONT_MOTOR_DATA_ONE and FRONT_MOTOR_DATA_TWO GPIO pins(GPIO19 and GPIO26) of the Raspberry Pi to the Input pins for Motor 2(Input 3, Input 4) in the IC. Connect the Output pins for Motor 2(Output 3, Output 4) of the IC to the front motor. The PWM_FREQUENCY and INITIAL_PWM_DUTY_CYCLE represent the initial frequency and duty cycle of the PWM output. We have created five class labels namely forward, reverse, left, right and idle and assigned their expected values. All class labels would require a folder of the same name to be present in the current directory. The input images resize to the dimension of the IMAGE_DIMENSION tuple value during training. The LAMBDA and HIDDEN_LAYER_SIZE values represent the default lambda value and the number of nodes in the hidden layer while training the neural network. All these values are configurable in configuration.py. The images for training are captured using interactive_control_train.py, the car is controlled using the direction arrows and all the images are recorded in the same folder along with the corresponding key press. After segregating the images into their corresponding class folders, the neural network is trained using train.py which takes two optional arguments - lambda and hidden layer size; default values would be those specified in the configuration file. At the command prompt, run the following command Once we have the trained model, the RC car is run autonomously using autonomous.py which takes an optional argument for the trained model; default will use the latest model in the optimized_thetas folder. Please feel free to post your doubts on code through my linkedin link: edin.com/in/shreyas-ramachandran-srinivasan-565638117/ CONTROLLING THE CAR The controlling process consists of 4 parts: The sensor interface layer includes various programming modules worried about getting and time stamping all sensor information. The discernment layer maps sensor information into inward models. The essential module in this layer is the PI camera, which decides the vehicle's introduction and area. Two distinct modules enable auto to explore in view of ultrasonic sensor and the camera. A street discovering module utilizes the PI camera determined pictures to discover the limit of a street, so the vehicle can focus itself along the side. At last, a surface evaluation module separates parameters of the present street to determine safe vehicle speeds. The control layer is in charge of managing the controlling, throttle, and brake reaction of the vehicle. A key module is the way organizer, which sets the direction of the vehicle in controlling and speed space. The vehicle interface layer fills in as the interface to the robot's drive-by-wire framework. It contains all interfaces to the vehicle's brakes, throttle, and controlling wheel. It likewise includes the interface to the vehicle's server, a circuit that manages the physical capacity to a significant number of the framework segments. In the proposed system, the raspberry Pi is used to control the L293D board, which allows motors to be controlled through the raspberry pi through the pulses provided by it. Based on the images obtained, raspberry pi provides PWM pulses tocontrol the L293D controller. L293D is a 16 Pin Motor Driver IC as shown in Figure 9. This is designed to provide bidirectional drive currents at voltages from 5 V to 36 V. Fig 9 L293D Breakout Board It also allows the speed of the motor to be controlled using PWM. It’s a series of high and low. The Duration of high and low determine the voltage supplied to the motor and hence the speed of the motor. PWM Signals: The DC motor speed all in all is specifically relative to the supply voltage, so if lessen the voltage from 9 volts to 4.5 volts, then our speed turn out to be half of what it initially had. Yet, for changing the speed of a dc motor we can't continue changing the supply voltage constantly. The speed controller PWM for a DC motor works by changing the normal voltage provided to the motor.The input signals we have given to PWM controller may be a simple or computerized motion as per the outline of the PWM controller. The PWM controller acknowledges the control flag and modifies the obligation cycle of the PWM motion as indicated by the prerequisites. In these waves frequency is same but the ON and OFF times are different. Recharge power bank of any capacity, here, 2800 mAH is used (operating voltage of 5V DC), can be used to provide supply to central microcontroller. The microcontroller used will separate and supply the required amount of power to each hardware component. This battery power pack is rechargeable and can get charged and used again and again.
honvl / Seeed Xiao NRF52840 BatteryArduino library to sense Seeed Xiao NRF52840 Battery voltage or charging state on non-Mbed 1.0.0 firmware
wizardoftrap / EV Charging Station Location OptimizationThis project optimizes EV charging station placement and capacity using MATLAB. It calculates optimal locations based on voltage stability and traffic congestion, then determines the ideal number of stations and points using TLBO.
LokiXun / FSBB DCDC Control SimulationRealize the constant current or voltage mode for the charge or discharge of Battery. referenced by paper "Passivity Based Control of Four-Switch Buck-Boost DC-DC Converter without Operation Mode Detection" https://ieeexplore.ieee.org/document/9968779
jfm92 / Solar Buck BoostLi-Po charging module with CN3063 and TPS63020 for solar and USB power, ensures constant voltage and efficiency.
mike805 / Eco Worthy Battery LoggerLog voltage, current, state of charge, temperature, etc. for Eco-worthy LiFePo4 batteries
Mamtapriya / Linear Regression Of Data Driven BatteryMachine-learning approach In this work, author has developed data-driven models that accurately predict the cycle life of commercial lithium iron phosphate (LFP)/ graphite cells using early-cycle data, with no prior knowledge of degradation mechanisms. To build an early-prediction model, a feature-based approach is used. Features, such as initial discharge capacity, charge time, and cell can temperature, are generated and used in a regularized linear framework and proposed from domain knowledge of lithium-ion batteries. Several features are calculated based on the discharge voltage curve to capture the electrochemical evolution of individual cells during cycling. For the Q(V), the discharge voltage curves of each cell, summary statistics such as minimum, mean, and variance are determined. The change in voltage curves between two cycles is captured by each summary statistic. Three alternative models have been studied due to the great predictive potential of features based on Q100-10(V). (1) variance of ΔQ100-10(V), (2) additional candidate features obtained during discharge and (3) features from additional data streams such as temperature and internal resistance. Data is collected from the first 100 cycles in every case. These three models are proposed to examine the cost–benefit of collecting more data streams as well as the accuracy limits of prediction. The training data (41 cells) are used to choose model features and coefficient values, while the primary testing data (43 cells) are used to evaluate model performance. The model is then tested using a secondary testing dataset (40 cells) that has been generated after the development of the model. The prediction performance is measured using two metrics: root-mean-square error (RMSE), which is measured in cycles, and average percentage error, which is explained in the ‘Machine-Learning model creation’ selection. In short, the data is first separated into training and test sets. The elastic net is then used to train the model on the training set, resulting in a linear model with downselected features and coefficients. The model is then applied to both the primary and secondary test sets. The elastic net prediction and data processing are done in MATLAB, while the classification is done in Python with the NumPy, pandas, and sklearn tools.
Falaknaaz-123 / Time Series Forecasting Using GANsThis is an implementation of Synthetic time series generation using Generative Adversarial Networks for energy storage systems(Machine Learning): Variables considered- Voltage (V), Charge Capacity (Ah), Battery Level.