Design andDevelopment of a Real-Time Monitoring System for Multiple Lead–Acid Batteries Based on IOT
In this paper, real-time monitoring of multiple lead-acid batteries based on Internet of things is proposed and evaluated.
4
Project description
1. Introduction
The demand for electric power for industrial purposes is growing rapidly. Many transportation vehicles and uninterruptible power supply (UPS) systems that are used in heavy industries require electric power for their smooth operation. These vehicles and UPS systems are equipped with lead–acid batteries as an alternate source of electric power. In addition, fuel saving strategies that actively utilize the power from these batteries [1] are being considered. Therefore, a reliable battery system is indispensable for effective operation in industry. However, it is to be noted that these batteries are considerably costlier and excessive use could result in their malfunction. Also, the damaged lead–acid batteries can have a negative impact on the environment during the recycling process. It is therefore very important to continuously monitor the development and management of these batteries to preclude undue damage and prolong the lifetime of the battery.
2. System Model
The block diagram of our proposed system is presented in Figure 1; it includes a temperature and humidity sensor module, a liquid level sensor module and a BQ34Z110 module [14]. The temperature and humidity data is estimated around the battery with the use of a chipcap-D sensor [15]. The battery’s acid level, one of the most important parameters to be determined, is evaluated through an electrolyte level sensor module explained in detail in the next subsection. The battery’s important parameters, namely, the full charge capacity, the remaining charge capacity, the state of charge, voltage, and average current are assessed through the BQ34Z110 module. For data transmission between the device and the microcontroller, the i2c protocol is used. We have used Philip i2c protocol [16] that is provided in the Cvavr library [17]. The ADC is also used for communication between the device and the microcontroller. The battery data from the sensors are received and the calculation and the analysis part is implemented in the microcontroller. Further, for our proposed system, the data is transferred to a Wi-Fi card (WizFi) using a UART protocol. For a clear representation and working procedure, the pin map detailed diagram of our proposed system, with the corresponding inputs and ports, is shown in Figure 2. It should be observed that in our proposed system the communication between the various parts of the system is done using WLAN technology, considering the mobility of the vehicles and the batteries in an industrial environment. The vehicles are self-governing and can connect to any of the gateways installed in the premises of the industry.

2.1. Electrolyte Level Sensing Evaporation of the electrolyte from the cells of lead–acid batteries is a well-known and serious problem. It leads to performance degradation in terms of the power output and can damage the cells. These batteries require continuous monitoring to reduce operational charges, as explained earlier
Based on this, we have developed a simple and yet cost-effective two-electrode-based electrolyte/liquid level sensor for our proposed method. The sensor can measure two different levels with a very high accuracy. The sensor is shown in Figure 3. Two electrodes are dipped inside the battery according to predefined targets. A thin film of electrolyte is always present on the inside walls of the cells, therefore, the electrodes are positioned so that they do not touch the walls. When the electrode touches the electrolyte, a current flows through the corresponding electrode connected across the negative terminal of the battery. The potential difference across the output of the electrodes and the battery negative terminal is stepped down using a LM7805 regulator, as high power can damage the microcontroller. The output is then fed to the microcontroller at ports PF2 and PF3. The microcontroller then senses the liquid level in the cell of the battery and sends the data to the server through the WizFi

2.2. The Integrated Circuit (IC) BQ34Z110-Based Battery Evaluation Circuit The Integrated Circuit (IC) BQ34Z110 [14]-based circuit module is a complete and compact solution for a lead–acid battery evaluation. The circuit module consists of various options and jumpers necessary for evaluation of the various battery types. This IC supports lead–acid batteries from 4–64 V. The IC also supports batteries with capacities above 65 Ah.
2.3. ATmega128a Microcontroller We have used an ATmega128a microcontroller to integrate the BQ34Z110-based module with the temperature, humidity, liquid level sensors, and the WizFi210. The ATmega128a microcontroller is an 8-bit microcontroller with a 128-kB system programmable flash [24]. It has a throughput up to 16 MHz at 16 million instructions per second (MIPS). Also, it has 53 programmable input/output lines and a 2.7–5.5 V operating voltage range. The schematic diagram of the ATmega128a microcontroller for our proposed method with the corresponding inputs is shown in Figure 5. In our proposed method, the Jtag circuit communicates with the microcontroller. The program is burnt into the microcontroller using the JTag circuit.
2.4. WizFi For transmitting the battery data over WLAN, we have used a WizFi210 [25,26]. The WizFi210 provides a quick and easy way to add WI-FI capabilities to the devices. The module supports a serial UART interface that enables connections to embedded designs using a 8/16/32-bit microcontroller. The module also supports a data rate up to 11 Mbps and is compliant with 802.11b. In the WizFi210 module, its Serial2WiFi interface can instruct the Wi-Fi radio to scan for access points and ad hoc networks with a specified service set identification (SSID), and basic service set identifier (BSSID).
2.5. Data Frame of the Proposed System
A data frame is used for storing the data tables of our proposed system. It is a list of vectors of equal length. For our proposed system, the data from each battery is collected into respective data frames. The main objective in using the data frame is to ensure that only a receiver with a known data frame can decode the data from the battery. In beginning of the frame, the ID of the lead–acid battery is uniquely defined to differentiate the data from multiple batteries, as our proposed system can support multiple n-number of batteries connected to the network. The data frame for monitoring our proposed system is shown in Figure 6 and the details of the data frame functions and units are summarized in Table 1.

3. Testbed Implementation,Prototype, and Software Development The testbed implementation,prototype, and software development for our proposed method is presented in this section. The basic setup and testbed is shown in Figures 7 and 8, respectively. The BQ34Z110EVM board is connected to a microcontroller AtMega128a. We have used Port F to connect the analog input to the A/D converter.


3.1. Software Development For processing the data from the lead–acid batteries in the microcontroller, C programming language is used. The data as shown in Table 1 is processed in the microcontroller using C language
3.2. TCP Server Socket-Based GUI In our C] TCP server socket program, the server terminal opens the specified TCP port. It waits for the battery’s (client) connection, takes multiple connections and listens to the connected battery’s messages (bytes array). Every battery client that is connected to the TCP server is wrapped-up in the connected battery client object and it gets added to the battery collection
3.3. UDP Server Socket-Based GUI The UDP can fire-off a message and immediately free the server-side network resources as it is a connectionless protocol. This also makes the UDP one of the easiest protocols to write a client/server application for. Also, the UDP preserves message boundaries, transmitting entire messages at once.
3.4. Database and Display Chart Database management is most useful in providing a centralized view of the data that can be accessed by multiple users from multiple locations, in a controlled manner [29]. It can limit the data that the end user can see, as well as how that end user can view the data, providing many views of a single database schema. End users and software programs are free from having to understand where the data is physically located or on what type of storage media it resides because the database handles all the requests. The greatest advantage of using a database is that it lets end users access and use the same data while managing data integrity. Instead of creating new iterations of the same data stored in new files for every new application, data is better protected and maintained when it can be shared using a database. The database provides a central store for data that can be accessed by multiple users in a controlled manner.
3.5. Android Application Considering the mobility of the vehicle in an industrial environment, it will be difficult for the vehicle’s operator to access the server and obtain the details of the battery. Therefore, we have designed a simple yet effective TCP socket-based android application that can be easily installed on the operator’s android device and can be executed at any time by the operator on the run. Our android application in a running condition is shown in Figure 17. The operator should know the battery (device) IP address and port number so that it can be used to receive the serial data frame of a particular battery on a click of the connect button. The data of the data frame from single client is divided into its respective 4 bits and displayed in the columns separately, as shown in Figure 17.
4. Conclusions Understanding the importance of effective remote monitoring of the lead–acid batteries in industrial environments, in this paper, a monitoring system prototype for handling multiple lead–acid batteries is designed and developed in real time based on Internet of things. To achieve this, we have developed a data acquisition system by building an embedded system through dedicated software.