Next Article in Journal
Assessment of MicroPET Image Quality Based on Reconstruction Methods and Post-Filtering
Previous Article in Journal
The Mathematical Model of Curve-Face Gear and Time-Varying Meshing Characteristics of Compound Transmission
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Development of a Power and Communication Bus Using HIL and Computational Intelligence

Department of Fundamentals of Machinery Design, Silesian University of Technology, 18A Konarskiego Street, 44-100 Gliwice, Poland
*
Author to whom correspondence should be addressed.
Appl. Sci. 2021, 11(18), 8709; https://doi.org/10.3390/app11188709
Submission received: 21 July 2021 / Revised: 12 September 2021 / Accepted: 13 September 2021 / Published: 18 September 2021

Abstract

:
This paper deals with the development of a power and communication bus named DLN (Device Lightweight Network) that can be seen as a new interface with auto-addressing functionality to transfer power and data by means of two wires in modern cars. The main research goal of this paper is to elaborate a new method based on a hardware in the loop technique aided by computational intelligence algorithms in order to search for the optimal structure of the communication modules, as well as optimal features of hardware parts and the values of software parameters. The desired properties of communication modules, which have a strong influence on the performance of the bus, cannot be found using a classical engineering approach due to the large number of possible combinations of configuration of the hardware and software parts of the whole system. Therefore, an HIL-based optimization method for bus prototyping is proposed, in which the optimization task is formulated as a multi-criteria optimization problem. Several criterion functions are proposed, corresponding to the automotive objectives and requirements. Different soft computing optimization algorithms, such as a single-objective/multi-objectives evolutionary algorithm and a particle swarm optimization algorithm, are applied to searching for the optimal solution. The verification study was carried out in order to show the merits and limitations of the proposed approach. Attention was also paid to the problem of the selection of the behavioural parameters of the heuristic algorithms. The overall results proved the high practical potential of the DLN, which was developed using the proposed optimization method.

1. Introduction

The first car design by Benz in 1885 [1] had an elementary harness, which merely involved high voltage cables to spark plugs. In 1915 [2], the Ford Motor Company implemented electric headlamps and horns, soon followed by turn signals, electric wipers, and other equipment. In the 1980s, Bosch proposed the first data interface, called the Controller Area Network (CAN) [3], for reducing the number of wire harnesses. Nowadays, cars are equipped more and more with electronic systems [4], Electronic Control Units (ECU) and interfaces. The typical low-speed CAN is limited to 125 kpbs, a classic CAN is limited to 1 Mbps, and CAN FD is limited to 3–5 Mbps depending on the environment. A Local Interconnect Network (LIN) is commonly used in communication with comfort devices or non-safety sensors, due to the lack of hardware redundancy and low speed (typically 20 kbps). FlexRay, which was developed to be faster and more reliable than other protocols, is used for safety critical applications and allows the transferring of data up to 10 Mbps [5]. Ethernet is used for high-speed-requiring devices, such as cameras in autonomous driving, and a typical baud rate is 100 Mbps or 1000 Mbps [6]. Autonomous driving raises communication techniques to a higher level, using the newest and the fastest technology of wireless techniques such as 5G for V2X communication [7,8,9]. Unfortunately, point-to-point wiring is still being used.
As can be read in papers [10,11], a harness can weigh from 15 kg in a combustion engine car, to about 20 kg in a small EV, to 91 kg in luxury vehicles [12]. The mass of the vehicle has a significant influence on energy consumption [13], but nowadays, EVs partly solve this problem by using recuperation [14]. Based on [10] it can be stated that a harness can cost up to 1000 USD. The harness’ simplicity can significantly reduce weight, cost and risk of failure during operation.
When it comes to small devices, of which many are used in a car (e.g., ambient light, sensors, actuators), Original Equipment Manufacturers (OEMs) have three solutions—using a separate wire for each device (this increases cost, weight and geometrical sizes of the harness), the same hardware but different software, where the address is programmed (this increases effort during production, and the risk of mixing devices which have the same shape), or auto-addressed modules on the line. There are a few solutions for auto-addressing available on the market; one of them from Melexis [15], another from Texas Instruments [16] named “Automatic slave node detection”, and a patent describing auto-addressing [17] is available for RS485 [18]. All solutions require wires, commonly one additional, which gives four lines including power supply. Focusing on reducing the number of wires in the automotive industry, there is only one solution that uses the same wires for transferring power and data, but not command. The company Yamar [19] proposed special chips to “inject” multiple interfaces to a power line. Depending on the chip used, one can achieve a data speed from 9.6 Kbps to 500 Kbps. This solution has a few disadvantages: cost (7EUR for CAN chip) and size (mainly peripheral components, coils, capacitors, and one crystal resonator). For a hardware engineer who designs a new device, one of the goals is to use as few components as possible, due to three reasons: more elements generate higher production costs (single component, assembly, maintenance), potential issues (hidden defects, production issues, supply chain issues), size (each element requires more space on the PCB (Printed Circuit Board). Researchers [20] attempted to send data using Yamar SIG60 (the oldest solutions from Yamar) with unsatisfactory results—the interface was working, but it was relatively slow at only 57.6 kbps and the researchers got no transmission error. Unfortunately, there are no more studies with the newest solutions from Yamar. In the industry, we can find the AS-I [21] interface, where data and power are sent on the same line. Voltage on the line is 12 V, and baud rate is low. Transfer is not expressed in bits per second. AS-I can check the status of 62 nodes in 20 ms. One of the oldest commonly used interfaces that uses only ground and one wire to deliver power and data is “1 wire”, introduced by Dallas Semiconductor, now known as Maxim.
The authors developed an interface to transfer power and data on the same line. The idea of this solution is to determine time frames for power transmission and another one for data transmission. The prototype of the proposed solution was built, and it was used in order to carry out several tests in a laboratory environment as well as in real conditions (Figure 1). It was possible to achieve a data link up to 2 Mbps, a power link up to 48 V and 10 A, hence the possibility of transmitting 480 W of power was accomplished. These experiments showed the high potential of the proposed solution. The next step presented in this study deals with solving the auto-addressing problem. The next step of this solution is to design auto-addressing.

2. New Communication Protocol

The authors of this paper proposed a new interface, the Device Lightweight Network (DLN). DLN allows us to use only one pair of cables to transfer data and power. However, the goal is to implement an auto-addressing functionality. The first version of DLN was characterized by the following parameters: data link up to 2 Mbps, power link up to 48 V and 10 A. The data are transferred during small breaks in power delivery. To avoid electromagnetic interference (EMI), data are transferred on a low voltage (about 2 V) and power on a much higher voltage (9–48 V), as in the example in Figure 2 with a 24 V power supply. Power and data delivery time can be adjusted depending on whether a higher data rate or more power is expected. Figure 2 shows an example of transferring high power (1.2 ms for data, 12.8 ms for power in each period) due to the supply for high-power lamps, an electric heater and two electric motors (Figure 1).
A proof of concept was built, where lamps and side mirrors are controlled. The side mirror was equipped with two electric motors and an electric heater. The network that was built operated perfectly while the devices were controlled at the same time, and the maximum current consumption was 6 A. The protocol was calibrated using engineering methods (Figure 2).
Auto-addressing, due to the multiple parameters to adjust, and the multi-criteria assessment, required using artificial intelligence algorithms connected with the hardware-in-the-loop technique. Most scientists use particle swarm optimization (PSO) or genetic algorithm (GA). The authors decided to use both algorithms with different parameters in order to compare the results of the optimization. To avoid unnecessary effort of simulations, the authors decided to find the optimal solutions using easier methods such as planning the experiment. For comparison purposes, the authors decided to find the best solution by applying an easier method based on a Latin hypercube sampling (LHS) approach to avoid unnecessary effort of simulations.

3. Motivation

Regarding multiple of the same devices on the line, for example, 25 lighting/sensor/actuator modules which are in one element in the car, for example, door side/cockpit/middle console, the possibility of auto-addressing can radically reduce cost, materials and time for production. Nowadays, a 4-line solution is commonly used in the case of auto-addressing, one pair of power supplies, and one pair of LIN_in, and LIN_out signals [16]. In this paper, the authors propose a solution for how to use only two wires, for power, transmitting data and auto-addressing. While auto-addressing is the ability to give a unique ID to each slave node on the line, ID defines the position on the line. Data transmission was designed and tuned using engineering methods with promising results, nevertheless tuning the auto-addressing features required to use artificial intelligence algorithms such as genetic algorithms [22] and particle swarm optimization, due to the number of possible combinations.
β = i = 0 7 max ( p h i ) min ( p h i ) ) + ( max ( p s i ) min ( p s i ) = 5.58 × 10 13 .
Due to the goal of finding a global optimum and a nonlinear function with discrete values, gradient methods cannot be used, mainly due to the stochastic nature of the objectives and because there are continuous and discrete decision variables in the vector p (more details can be seen in Section 3). The authors decided to use an experiment planning method, genetic algorithm and particle swarm optimization to compare results and check if given results can be treated as a global optimum.
The idea for solving the auto-addressing task was to inject by master a disruption which will be reflected and modified by the client, and at the end the master signal will be sampled. Such a solution is very difficult to test in a virtual environment. The authors decided to connect the whole system to hardware-in-the-loop instead of trying to build a mathematical model according to the Jaguar Land Rover approach, which connects the windscreen wiper for the hardware-in-the-loop setup [23] and other non-automotive researchers who optimized the buck converter [22], and validated PID using HIL [24].

4. Auto Addressing Method

There are several methods of auto-addressing. In the beginning, it auto-addressing has to be defined. Nowadays, almost every device has a unique number or address. In this paper, the authors focus on addressing defined as assigning the next unique number to the next device. Such a solution is used by Texas Instruments [16] and Melexis [15] for the LIN interface, as well as the RS485 interface [17].

4.1. The Method of Auto Addressing

Due to the target of using only one pair of cables, the use of some kind of reflectometer idea was needed, which is used in optics [25], echo location/ultrasounds [26] and also in detecting damages in electric cables [27] and will be used in the proposed approach. However, it has to be simplified to a maximum, and the system has to be able to change the characteristics of the nodes on the line, or measure the signal directly on the clients.
  • Measure on clients: this solution was the easiest. Using a simple pulse generator, the authors measured up to 400 mV deferments on each node. The voltage drop was lower at a greater distance from the master. This solution required a separate measurement circuit on each node which in the end will give the result but will be too expensive to implement.
  • Measure on master: using an oscilloscope, the authors cannot prove whether this solution will work or not. The voltage drop could be observed using an oscilloscope (less than 1 mV). It will be difficult to measure with a simple ADC circuit [28]. The circuit has to be as simple as possible to reduce the potential cost and allow the automotive market to reduce the number of harnesses.
The second approach is the chosen one. The authors used advanced techniques to find optimal parameters for this solution. Clients will connect coils and/or capacitors to create distortion on the line.

4.2. Auto-Addressing Configuration

The idea to use the auto-addressing feature was to generate a special signal by the master board, then generating disruption by client(s), and using parasitic parameters of the connection cable, recognizing how far from the master the client is. Information about the distance of each client from the master providing a unique address. This method has the disadvantage of minimal cable length between clients. After the first test, using an oscilloscope, the authors noted that 20 cm of cable is sufficient length to recognize changes in the signal shape. This is enough to meet the project requirement, and to develop an auto-addressing idea. The proposed interface uses only two wires to transmit power, data and allowing auto-addressing, which necessitates a wireless connection to have a second layer of communication between nodes and the MATLAB environment(MathWorks, Natick, Massachusetts, USA). The second layer will be used only for research, to avoid any disturbance from the signal between nodes. It is widely known that many solutions can be incorporated, with optical or radio connection options as are most commonly used. The optical connection can be characterized by the necessity of face-to-face transceivers’ orientation. The idea was to use 15 nodes in the research stand. To ensure high stability, each node should have an individual transceiver, which generates problems to find or build management devices for all 15 transceivers. The second approach is to use radio, which eliminates most of the problems related to optical solutions. The authors had to decide which radio communication standard to choose. Due to their broad experience with IoT, the authors conducted research on IoT libraries in the MATLAB environment. An external MQTT library written in Java was adapted to the MATLAB environment. After stability tests, the decision was made to continue the idea of using the external library. The test setup was built with ESP32 and MQTT brokers on Raspberry Pi (Rpi, Raspberry Pi Foundation, Cambridge, England), where Raspberry was also configured as an Access Point (AP) for ESP32 clients. DLN interface works by continually changing the state of work from power delivery to data interface. For the auto-addressing procedure, the signal was divided into a 10 ms period of power delivery, and 12 ms of auto-addressing signals; an example is given in Figure 3a. Positions of clients are known. Calculated positions are compared with known positions; when they match, parameters like cost, standard deviation between nodes’ addresses (more is better), standard deviation between measures (less is better) and minimal difference between addresses(more is better), are calculated. If not successful, all parameters are set to 1.
Every test contains 15 repeats (for each node—Figure 3a), every repeat contains 25 measure cycles (Figure 3b). Each cycle is based on sending an energy pulse to the line (Figure 4). Most of the parameters were initially programmed to allow change in value during operation. All signals that can influence the possibility of auto-addressing were connected with algorithm solvers to optimize their value. Figure 4 shows how a generator for injecting disturbance was constructed. Variable X2(A22) defines time in μ s to charge capacitor C0; a higher time denotes more energy. Variable p h 5 defines which pulse coil will be used to inject the signal. Time to discharge the capacitor C0 through the coil is constant (A23). Switches S1–S8 are close during the whole cycle (Figure 3b, elements C0–C24).
Using a dedicated circuit with an RC filter, an active peak detector and an analogue to digital converter (ADC), the microcontroller can capture the numerical value of the response from the line. Based on Andreas Spiess tests [29], the authors anticipated that the internal ADC from the ESP32 microcontroller would not be precise enough to measure signals. The PCB was equipped with an external, precise ADC, but the analogue signal was also connected to integrated ADC from ESP32. During the final test, the authors recognized that internal ADC was precise enough, and was much cheaper. Therefore, the authors decided to use only the internal one. During the first tests, using an oscilloscope, the authors observed a response from a line. Depending on additional elements on the line, the response signal is characterized by different parameters, such as amplitude or length of the wave form. Due to the usage of active peak detector, it is essential when the analogue value will be taken. Variable p s 2 defined the delay between generating pulse and first ADC sample, Variable p s 3 defined the delay between four measures.
To generate disturbance on the line, a coil, or capacitor, was connected to the line. The schematic on Figure 5 shows the idea of connection. For switches, the authors chose transistors with high peak current and fast opening time. To provide many configuration options, components as shown in Table 1 were chosen. Later in the article, these components will be named LC terminators.
Four auto-addressing strategies have been developed. Algorithms chose a strategy using parameter p s 4 [see Table 2]. In the case of 15 nodes (1 master + 14 clients), measurements have to be repeated 15 times (R0–R14 in Figure 3a). Strategies define which clients have to connect the LC terminator parallel with the signal line. Table 3 shows the first strategy. In all variants, LC terminators are always used by the master board. Parameters p h 2 and p h 3 can be set to not use the LC terminator—it allows us to reduce the quantity of strategy from eight variants to four variants giving the same effect. Strategy 2 is similar to the first one, but all LC terminators are, as a default, disconnected from the line, and with every next repeat (R0–R14) the proper client connected his LC terminator.
Strategy 3 consists of connecting the LC terminator of clients with lower positions than current repeats, see the example in Table 4. Strategy 4 is characterized by a similar mechanism to strategy 3, but at the beginning all LC terminators are connected with the line. With every iteration, the next client disconnected its LC terminator.
Parameters p h 6 and p h 7 contain information if master ( p h 6 ) and client ( p h 7 ) connect termination resistors 100 ( Ω ) to the line.

4.3. Test Description

The first research stand was constructed by using one master and four clients. This small application was used to set up many options, such as signal flow, measure strategy, software on clients and master, objective functions in MATLAB and so forth. After the first test, specifically where changing setup or software on clients was very fast, the authors decided to expand the research stand. Twenty prototype boards were ordered, in the case of an unpredicted problem only 15 boards were used to build the test setup. With five boards, everything works correctly using Rpi as the MQTT server and AP. With this setup, the authors adjusted all parameters to optimize communication between nodes, where 2 Mbps was achieved. All parameters of communication were adjusted using well-known laboratory equipment and engineering knowledge.
The next step was to build up a research stand for 15 boards and find parameters of auto-addressing, which finally was even more difficult than the authors expected. Unfortunately, the stability of AP on Rpi was unsatisfactory when all 15 nodes sent the report after the test (exactly at the same time). The report contains 1500 measured parameters. The behaviour was diagnosed by MQTT.fx—external tool. It necessitated the use of additional AP, where the Mikrotik RouterBoard was selected, then all frames could be received by the computer with the MQTT.fx and MATLAB environment installed in it. The last issue the authors had to tackle was the MQTT library written in Java for the MATLAB environment because it lacked speed to process all frames from MQTT. The standard solution is to increase Quality Of Service (QOS) in MQTT frames. The disadvantage of this solution is, however, the extended time of sending each measurement. Therefore, in the case of planned 500 k–1 mln tests, another solution was selected. A two-thread script was written in Python, and ran on Rpi. One thread handled receiving and decoding MQTT frames from the JSON format, the other one analysed data, and after the finished test, it collected all data into one frame which was then sent to Matlab. This configuration made the research stand and data flow concept more complicated, but significantly reduced the time of a single measurement, and guaranteed almost 100% data correctness. The only programmed delay (Figure 6, p. 4) was to synchronize all nodes.
The authors prepared a special program in the MATLAB environment, which received input data of 15 variables, where artificial algorithms (AA) try to find optimal values and many static values, such as strictly hardware dependent parameters, or the component cost of LC terminators. The communication between all components of the stand is shown in Figure 6. The MATLAB environment code is responsible for building up MQTT frames. All frames are sent to boards and Rpi. Client boards after receiving frames with an individual configuration (Figure 6 frame 3) are set to wait for a trigger from the master. To avoid any problems with synchronization, the software waits 200 ms (Figure 6 p. 4) before the data publish the start of the test frame (Figure 6 frame 5). After the test, the boards publish the measured data, which are collected by Rpi to one frame (Figure 6 frame 9), which is published by Rpi, and subscribed by the MATLAB environment (Figure 6 frame 10).

4.4. Research Stand

The main goal of the test stand is to test and optimize communication between nodes, and optimize auto-addressing parameters. This chapter will be dedicated to the second use case: optimize auto-addressing parameters. Figure 7 shows the relations and signals flow between blocks in the whole Hardware-In-The-Loop system, while Figure 6 and Figure 8 show the test bench and nodes of the communication. One master and 14 client nodes can be found in the bottom-right corner. Each node is connected through a single twisted pair of cables, and WLAN allows reliable communication during tests.

5. HIL-Based Optimization Method for Bus Prototyping

The effectiveness of the power supply and communication bus strongly depends on its Hardware-In-The-Loop structure S as well as on the hardware components and software parameters of the proposed solution. These factors have a great influence on addressables, and therefore they must be adjusted correctly.
The main purpose of the optimization process is to search for the optimal structure of the bus and the optimal values of hardware parameters p h and software parameters p s , to obtain the highest performance of the whole system. This issue is viewed as a multi-objective optimization problem and hence it can be stated as the following equation:
Minimize C S , p h , p s = c 1 S , p h , p s c 2 S , p h , p s c n S , p h , p s subject   to Ω S , p h , p s , C ,
where S , p h and p s represent decision variables, c i is the i-th criterion function that is being used to express the desirable features and performance of the research version of the bus (it should be stressed that criterion functions represent objectives which are not conflicted), Ω is related to constraints and boundaries, which should be chosen to consider different variants of hardware and software parameters. To reduce the complexity of the problem, it is noted that in some cases the structure S can be determined using a part of the decision variables corresponding to the values of hardware features included in p h .
The hardware and software features of the bus for the given number of the modules n can be written using the general formula as follows:
p = [ p h M p h C p s M p s C ] ,
where p h M and p h C denote the hardware parameters of a master and clients, whereas p s M and p s C describe their software parameters.
In this paper, it is assumed that p h M is composed of four values of parameters as follows:
p h M = [ p h 1 , p h 2 , p h 6 , p h 5 ] ,
and p h C is composed of
p h C = [ p h 3 , p h 4 , p h 7 ] ,
where p h 2 is the number corresponding to the selected capacitor on master (see Table 1), p h 2 is the number corresponding to the selected inductor on master (see Table 1), p h 6 is used to decide whether a termination resistor on master is necessary or not, p h 5 is applied to describe the inductor in the pulse generator (see Figure 4), p h 3 is used to select a capacitor on client (see Table 1) and (Figure 5), p h 4 is used to select an inductor on client (see Table 1 and Figure 5), p h 7 is used to decide whether a termination resistor on client is needed or not. Except for hardware parameters, software decision variables can be divided to auto-addressing configurations such as p s 2 and p s 3 , where the delay before the first ADC sample and the gap between samples can be chosen, p s 1 is the time to charge pulse generator (A22 in Figure 3d), and p s 4 is a discrete variable defined strategy of auto-addressing, especially managing the use of coils and capacitors on master and clients (Table 3 and Table 4). The second group of software decision variables are data processing methods, like p s 5 where mathematical operations of the input data are chosen, p s 6 , where the source of data for analysis is chosen, and p s 7 , where the target manner for addressing is chosen. Prior research has thoroughly investigated how the following addresses will look; two obvious trends ware noticed—following addresses will rise or fall—as well as another two not so obvious trends—in the rising trend the lower value is the last one, and in the falling trend, the higher avlue is the last one. An example is shown in Figure 9.
Generally, multi-objective functions very often have an infinite number of local as well as global extrema and therefore one should investigate a set of points, each of which satisfies the objectives. Because of this, the predominant Pareto optimality concept is adopted. The Pareto-optimal solution is often considered the same as a non-dominated solution; it exists if there is no solution that improves at least one objective function without worsening the others. In this research, it is sufficient to apply the following fundamental measures as objectives:
  • c 1 , which is based on addressable factor:
    c 1 ( p h , p s ) = 1 i = 2 n 1 1 if a i > a i + 1 0 other if p s 7 = 2 or 4 1 i = 2 n 1 1 if a i < a i + 1 0 other other ,
    where elements of the vector a are computed using the proposed rule in the form as follows:
    a n ( a ) = a n = max ( a ) + 1 if a n = min ( a ) and p s 7 = 3 a n = min ( a ) 1 if a n = max ( a ) and p s 7 = 4 no change in other ,
    and n represents the number of nodes, p s 7 defines the addresses trend (see Table 2), and a i measures address value of the i-th node.
  • c 2 is based on the minimal difference between addresses:
    c 2 ( p h , p s ) = 1 Δ m a x + 1 ,
    where Δ m a x describes the difference in addresses between neighbour nodes.
  • c 3 is used to show the overall cost of the system:
    c 3 ( p h ) = ν ( p h M , p h C , n ) ,
    where ν is the function which calculates a cost of each element used in the current approach.
On the other hand, the global criterion method can be successfully applied to transform a multiple objective function into a single objective one. This way, an indirect utility function can be expressed in its simplest form as the weighted sum of objectives:
C ( p h , p s ) = w C T p 1 w T = 5 c 1 if c 1 1 n 1 w 1 c 2 + w 2 c 3 other ,
where w is a row vector with weights indicating the relative significance of the objective functions; in this study, w 1 and w 2 indicate the weights for the second and third criteria, respectively.
The optimal solution is found if the criterion function C has a relative minimum value at P*, that means if:
p * = [ p h * p s * ] = argmin p Ω   C ( p h , p s ) .
It has been decided to apply intelligent computing and hardware in the loop techniques due to several difficulties in bus prototyping discussed in Section 2. The proposed scheme of the optimization method is present in Figure 8. The HIL part of the system is composed of n modules (one master unit and n 1 clients), where all modules are connected with one twisted pair of cables and a wireless network to remove the influence of auto-addressing signals. The optimization process is managed by the software created employing MATLAB and Raspberry Pi platforms. The authors decided to use the Global Optimization Toolbox for the implementation of evolutionary and particle swarm algorithms. More details are given and described in Section 5.2.
Different optimization algorithms can be utilized for solving the problem, which has been declared in the form of (2) or (10). Hard computing optimization methods, for example, gradient-based approaches, cannot be adopted in this paper, mainly due to the stochastic nature of the objectives and because there are continuous and discrete decision variables in the vector p. On the other hand, pure stochastic optimization methods, for example, Monte Carlo techniques, will not be able to find an accurate solution, in this case guaranteeing polynomial-time convergence. Instead, soft computing optimization methods may be used to find the global minimum of the function. In this study, heuristic algorithms are applied such as SOAE, MOAE (Single or Multi-Objective Evolutionary Algorithm) and PSO (Particle Swarm Optimization).

5.1. Single or Multi-Objective Evolutionary Algorithm

Evolutionary algorithms are based on the natural selection process that mimics biological evolution. In order to apply such an optimization technique for finding a solution of the problem it is necessary to define the following properties of the algorithm [30]: the representation of the individuals, the fitness function, selection and succession methods, crossover and mutation operators. It is assumed that the number of individuals in the population is fixed at each epoch of the evolutionary process and that individuals are composed of genes representing real numeric and integer values of adjustable hardware and software parameters of the bus. The length of the chromosome is dependent on the number of these parameters and equals the length of the vector p:
chr = p = p 1 p 2 p d .
The initial population is generated using the normal distribution. The fitness value of an individual is computed using the objective function (2) or (10). The best fitness value for a population is the smallest fitness value for every individual in the population. Stochastic uniform is applied to choose parents for the next generation, whereas succession operations are realized by defining the reproduction rules characterized by two parameters: elite count ( δ s ) and crossover fraction ( p c ). The first parameter is the number of individuals with the best fitness values in the current generation that are guaranteed to survive to the next generation. The second one is the fraction of individuals in the next generation, other than elite children, that are created by crossover. It is decided to use a simple heuristic crossover operator. On the basis of two individuals, p 1 and p 2 , in the case of C p 1 < C p 2 , then the new one p 3 is created according to the formula mentioned below
p 3 = p 2 + λ h p 1 p 2 ,
where λ h is a fraction pointing at the better adapted individual.
A mutation operator is responsible for generating heterogeneous individuals. This operator is based on an adaptive feasible method, and it randomly generates directions with respect to the last successful or unsuccessful generation. The mutation operator finds a direction and step length satisfying bounds and linear constraints. The algorithm is also described by two important parameters such as the population size and the number of generations. The values of these parameters are arbitrarily selected during optimization experiments. In this study, it is decided that the total number of evaluation of the fitness function is constant, and it is equal to Ψ . Hence, the number of individuals in a population is calculated using the following formula:
Population = Ψ Generations .

5.2. Particle Swarm Optimization

The particle swarm optimization is a population-based stochastic optimization technique [31,32], which is inspired by simulation of the social behaviour reflected in flocks of birds, bees and fish that adapt their movements in order to seek the best food sources as well as to avoid predators [31,33]. This type of optimization approach is also viewed as a parallel evolutionary computation technique.
Numerically, the basic PSO algorithm can be formulated in vector notation, as is proposed in [34]. The velocity v k is updated using its current value and a term which attracts the particle towards its own previous best position p 1 * and globally the best position p 2 * in the whole swarm:
v k + 1 = a v k + b 1 r 1 p 1 * p k + b 2 r 2 p 2 * p k ,
while the particle position p k is dynamically actualized using its current value and the newly computed velocity v k + 1 :
p k + 1 = c p k + d v k + 1 ,
where the symbol ⊗ denotes element-by-element vector multiplication, a is the momentum factor, also known as the inertia weight, coefficients b 1 and b 2 are used to describe the strength of attraction (cognitive and social attraction coefficients, respectively), c and d are black-box tuning parameters, vectors of random numbers r 1 and r 2 that are useful for good state space exploration (they are usually obtained using the generator of pseudo-random numbers with uniform distribution in the range of 0 to 1).
In this algorithm, the cost function in the form of (10) was used. The PSO algorithm characterizes three main parameters—population size, self-adjustment weight and minimal neighbours’ fraction. To have a reliable comparison between algorithms, the same total number of cost function evaluations is necessary ( Ψ ), hence the max iteration is calculated using the simple equation:
SwarmSize = Ψ MaxIter + 1 .
The self-adjustment weight parameter can be in the range from 0.5 to 3.5 with step 1.0, where a default value is 1.49. Considering a stability analysis provided by Brest et al. [35], Clerc and Kennedy [36] or Katunin and Przystałka [37], it is decided to relate the self-adjustment weight ( b 1 ) and social adjustment weight ( b 2 ) as follows:
b 2 = 4.05 b 1 .
This technique was chosen to test the parameters of the algorithm with different configurations; some researchers use PSO with fixed parameters where self-adjustment weight ( b 1 ) and social adjustment weight ( b 2 ) are set to 2 [33,38]. The adopted methodology used close values at b 1 = 2.5 and at b 1 = 2.5 , where b 2 is calculated to 1.55 and 2.55 . Interpolating results from Section 6, the authors conclude that the decision was the right one. The interpolated quality parameters of PSO also suggest that the default value of b 1 is closer to optimal than 2.

6. Verification and Validation

Verification was divided into a few sections, where initially the authors compared results from GA with different parameters. There will be quantitative and qualitative comparisons. The same approach will be used for PSO. All results will also be compared with LSH.

6.1. LHS Results

Finding solutions using artificial algorithms always provides the risk of not finding the best-fit result, especially in a noisy environment. The authors decided to start with the LHS algorithm to have sample coverage. The results, shown in Figure 10 will also be beneficial for comparison with other algorithms, to prove AI algorithms can always be better. The authors generated Ψ = 10,000 unique elements using LHS and checked the results. Seven input samples allowed HIL to correct addressing. The LHS algorithm worked with a success factor 0.07%.
To have reliable addressing, c 2 should be at a minimum level of 0.5. LSH gives us only three such results, which is 0.03% of the selected data. LHS does not deliver any information about which optimization variable we can reduce, as we can find many parameters in each decision variable in all seven results.

6.2. Results of GA

The results of Multi objective Optimization using Genetic Algorithm were divided into two parts; one is quantitative, where the authors checked how many results ware found from each algorithm configuration, and the second is a qualitative comparison, where the authors checked how close to optimal all the algorithms were.

6.2.1. Quantitative Results of GA

The authors carried out 48 optimizations with different parameters (Table 2). The best one finds 50 results in 100 individuals (crossover fraction 0.4 and crossover heuristic parameter 1.2), which is remarkable in correlation with LSH. The worst one could not find even one result—all cases with 200 generations, where the population is characterized by only 50 individuals. Figure 11 and Table 5 present a number of correct solutions, depending on algorithm parameters.
As can be seen in Table 5, the highest number of results can be found using the largest populations (in this test 200 individuals), the crossover fraction set to 0.4 and crossover heuristic parameter set to 1.2. During testing different parameters, test with the above parameters found the largest amount of correct results.

6.2.2. Qualitative Results of GA

Due to multi objective optimization used in GA, quality features were compared on the Pareto front. For the first, the check width was most of the results, all points were printed on a diagram with the cost ( c 3 ) of the solution on the X-axis and minimal difference between address ( c 2 ) on the Y-axis (Figure 12, Figure 13 and Figure 14). Decision variable c 2 was calculated from Equation (8). The colour code informs about the type of optimization (see Table 6). It is worth noticing that GA parameters, which generate a higher number of results, did not generate the best results.

6.2.3. Best Solution from GA Multi

Comparing the best results from quantitative and qualitative perspectives, it can be expected that the best results are from the simulation with a population (pop) of 200 individuals, the crossover fraction (Cfra) set to 0.4 and the crossover heuristic parameter (Cheu) set to 1.1, which is not a case. The algorithm with the highest number of results did not deliver optimal solutions. It is clearly visible that LHS usually gives us the worst results; there was only one case where GA delivered worse results than LHS. As for the results, almost all variants of GA configuration delivered a different spectrum of solutions, which is a different local minimum. Only two configurations (pop:200, Cfra:0.6, Cheu:1.1 and pop:200, Cfra:0.9, Cheu:1.2) deliver solutions from a few local minima. However, all algorithms found all optimal results with the same two decision variables; the strategies of using coils and capacitors ( P s 4 ) and the addresses’ trend ( P s 7 ) always have the same value.

6.2.4. Summary GA Multi

The results show how important it is to set correct optimization parameters. There was no significant influence of crossover fraction (CFR) and crossover heuristic parameter (CHP), but the size of the population has a considerable influence on the results, both quantitative and qualitative. Table 5 shows us that a crossover fraction set to 0.4 and a crossover heuristic parameter set to 1.2 are the best parameters for the current approach. It is essential to indicate that for all results, four from 14 decision variables have an almost fixed value (all are discrete one) and the others are very alike.

6.3. Results of PSO

The authors checked 36 unique configurations of the PSO algorithm with the following configuration: swarm population: 50, 100, 200 individuals; self adjustment weight ( b 1 ): 0.5, 1.5, 2.5, 3.5; social adjustment weight: calculated with Equation (18); min. neighbours’ fraction: 0.12, 0.25, 0.5. Each configuration has 10,000 objective function calls. Details in Table 7.
Table 7. PSO parameters and colour/shape codes for figures.
Table 7. PSO parameters and colour/shape codes for figures.
Swarm Size b 1 Colour Code in Figure 15, Figure 16 and Figure 17MNFSymbol Colour in Figure 15, Figure 16 and Figure 17
value500.5red0.12+
1001.5blue0.25x
2002.5green0.5
3.5yellow

6.3.1. Qualitative Results of PSO

Due to the single objective optimization of Particle Swarm Optimization, the authors cannot mark the best results as being ahed of optimal solutions. PSO was reduced to criteria, according to the pattern Equation (10), where λ is the inverse of the number of addresses where each one is a (physical) higher (or lower—depending on algorithm) address. There are 14 clients online, meaning 13 areas nodes. If fewer addresses will be correct, variable c 1 will be characterized by a higher value. “C” is the cost of the current solution, c 2 is the minimal difference between addresses. Figure 18 represents alternative solutions of PSO algorithms. Shape and colour codes were shown in Table 8. As one can see, higher population size means better results, but even in the smallest population there was one result with c 2 close to 0.2 (according to Equation (8) c 2 has the higher weight). Decision parameter c 2 should have a minimum value of 0.5, which was achieved only two times at a particle size of 50, four times at a particle size of 100 and nine times at a particle size of 200, which led the authors to the conclusion that the number of correct solutions is growing proportionally to population size. Based on Table 8, if the minimum neighbours fraction is set to 3.5, the chances of finding a multiple solution are poor; based on this, the maximum correct solution in the current approach will be nine, which translates into the conclusion that a population at a particle size of 200 is optimal for the correct solution.

6.3.2. Quantitative Results of PSO

For analysing the quantitative results of PSO, Figure 18 was created. The size of the bubble represents the quantity of correct results. We can see that setting the optimal value is more important in PSO than in GA. As with GA, a bigger population is better. The authors obtained 51 correct solutions during those tests in which population size = 200. In future research, the best population should be tested. Parameters such as minimal neighbour fraction and self adjustment weight have been well estimated due to the biggest results in the middle of the parameters’ spectrum. The full comparison of parameters’ influence on the number of results is visible in Table 8.

6.3.3. Summary of PSO

It is clearly visible that LHS usually gives us the worst results, but in the case of using bad algorithm configurations, LHS can deliver better results. As for the results, on the upper diagrams, the authors mark 19 results—the best from each algorithm configuration. In Figure 16 and Figure 17, “x” can be found in the bottom-left corner and two solutions are visible; they are the best results from all tests that the authors conducted. Comparing these two points and all other points (not shown in the figures) from these two configurations, the authors noted that only one decision variable was not the same in all cases.

6.4. Summary

To summarize, the best results ware achieved by PSO (Size: 200, MNF: 0.5 SAW:0.25), confirmed by Equation (10). The best GA solution was 59%, and the best LHS solution was 245%, which was more expensive compared to PSO, the comparison is shown on Figure 19. However, the best GA solution was characterized by a three times better MDA than PSO (in this particular case the costs are 3.23 times higher than in the best result), and the best LHS is characterized as two times worse c 2 compared to PSO.

7. Conclusions

The goal of this research was to develop and test a power and communication bus, with a focus on developing and finding the best parameters for auto-addressing. All goals were achieved. The bus was developed with better parameters than were expected; it is up to four times faster (up to 2 Mbps, where 512 kbps was the target) and can transfer up to 480 W (48 V and 10 A). DLN is cutting-edge technology, which can significantly reduce the number of cables in cars, which at the end reduce C O 2 footprint, the weight of a car and also reduce costs by reducing production time and used materials. The authors are confident that the proposed solution can be used in all non-safety applications in a car. The cost of the example of usage is much lower than the current solution.
The authors, using the HIL setup, artificial intelligence computing in a particular genetic algorithm, swarm optimization and planning an experimental method, checked multiple parameters of DLN and chose the best one to ensure the proper operation of the auto-addressing function. The best results were achieved by using artificial intelligence algorithms, in both cases of the solution and the difference between module addresses. Out of the two used algorithms, both have better results in the highest number of individuals in a population. Particle swarm optimization delivered the best results in the tested approach. However, in future, the use of PSO algorithms with more variants of minimal neighbour fraction parameters have to be tested, especially 0.2 and 0.3.
The proposed bus DLN can be implemented in new cars after real life tests and admission tests. DLN can be commonly used in QM solutions and not in safety systems due to the lack of redundancy. The proposed Hardware-In-The-Loop system connected to artificial intelligence proved to be a perfect method for adjusting physical hardware. This approach can be used in the future for solving similar problems.

Author Contributions

Conceptualization, M.S. and P.P.; methodology, M.S. and P.P.; software, M.S.; validation, M.S. and P.P.; formal analysis, M.S.; investigation, M.S.; resources, M.S.; data curation, M.S.; writing—original draft preparation, M.S.; writing—review and editing, P.P.; visualization, M.S.; supervision, P.P.; project administration, M.S.; funding acquisition, P.P. All authors have read and agreed to the published version of the manuscript.

Funding

Paid from the funds of the Ministry of Education and Science 12/DW/2017/01/1 from day of 7th of November 2017 r.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Data available in a publicly accessible repository that does not issue DOIs. Publicly available data sets were analyzed in this study. Data can be shared on request.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

The following abbreviations are used in this manuscript:
LINLocal Interface Network
SHardware-In-The-Loop structure
pParameters—Decision variables
RMeasure Results
Ccriteria
c i i-th criterion function
p h hardware parameters
p s software parameters
Ω boundaries of ph and ps
RpiRaspberry PI
APAccess Point
MQTTMessage Queuing Telemetry Transport
IOTInternet Of Things
PSPower Supply
MMaster board
C Client Board
MOAMulti Objective Algorithm
A/SActuator or Sensor
c n i-th of Client Board
MDA ( c 2 ) minimal difference between address
LHSLatin Hypercube Sample
DLNDevice Lightweight Network
EMIElectromagnetic Interference
OEMOriginal Equipment Manufacturer
PCBPrinted Circuit Board

References

  1. CO, Benz. Fahrzeug Mit Gasmotorenbetrieb; Technical Report; Patent Office: Munich, Germany, 1886. [Google Scholar]
  2. Ford. Exterior Lighting History; Technical Report; Ford: Dearborn, MI, USA, 2021. [Google Scholar]
  3. Li, R.; Liu, C.; Luo, F. A design for automotive CAN bus monitoring system. In Proceedings of the 2008 IEEE Vehicle Power and Propulsion Conference, Harbin, China, 3–5 September 2008; pp. 1–5. [Google Scholar] [CrossRef]
  4. Ploss, R.; Mueller, A.; Leteinturier, P. Solving automotive challenges with Electronics. In Proceedings of the 2008 International Symposium on VLSI Technology, Systems and Applications (VLSI-TSA), Hsinchu, Taiwan, 21–23 April 2008; pp. 1–2. [Google Scholar] [CrossRef]
  5. Zalewski, J.; Trawczyński, D.; Sosnowski, J.; Kornecki, A.; Śnieżek, M. Safety Issues in Avionics and Automotive Databuses. IFAC Proc. Vol. 2005, 38, 26–31. [Google Scholar] [CrossRef] [Green Version]
  6. Keysight. From Standard Ethernet To Automotive Ethernet; Technical Report; Keysight: Santa Rosa, CA, USA, 2019. [Google Scholar]
  7. Zadobrischi, E.; Dimian, M. Vehicular Communications Utility in Road Safety Applications: A Step toward Self-Aware Intelligent Traffic Systems. Symmetry 2021, 13, 438. [Google Scholar] [CrossRef]
  8. Ahangar, M.N.; Ahmed, Q.Z.; Khan, F.A.; Hafeez, M. A Survey of Autonomous Vehicles: Enabling Communication Technologies and Challenges. Sensors 2021, 21, 706. [Google Scholar] [CrossRef] [PubMed]
  9. Alparslan, O.; Arakawa, S.; Murata, M. Next Generation Intra-Vehicle Backbone Network Architectures. In Proceedings of the 2021 IEEE 22nd International Conference on High Performance Switching and Routing (HPSR), Paris, France, 7–10 June 2021; pp. 1–7. [Google Scholar] [CrossRef]
  10. Palanivel, N.; Chen, T. Wiring harness reduction in automotive using Li-Fi technology. In Proceedings of the 2017 International Conference on Wireless Communications, Signal Processing and Networking (WiSPNET), Chennai, India, 22–24 March 2017; pp. 1778–1783. [Google Scholar] [CrossRef]
  11. Munro, S. BMW I3 REPORTS; Technical Report; MunroLive: Auburn Hills, MI, USA, 2013. [Google Scholar]
  12. Sparks, D.; Noll, T.; Agrotis, D.; Betzner, T.; Gschwend, K. Multi-Sensor Modules with Data Bus Communication Capability; International Congress & Exposition; SAE International: Warrendale, PA, USA, 1999. [Google Scholar] [CrossRef]
  13. Kivekäs, K.; Lajunen, A.; Baldi, F.; Vepsäläinen, J.; Tammi, K. Reducing the Energy Consumption of Electric Buses With Design Choices and Predictive Driving. IEEE Trans. Veh. Technol. 2019, 68, 11409–11419. [Google Scholar] [CrossRef]
  14. Koehler, S.; Viehl, A.; Bringmann, O.; Rosenstiel, W. Optimized recuperation strategy for (Hybrid) Electric Vehicles based on intelligent sensors. In Proceedings of the 2012 12th International Conference on Control, Automation and Systems, Jeju, Korea, 17–21 October 2012; pp. 218–223. [Google Scholar]
  15. Melexis. MLX81112 Datascheet; Technical Report; Melexis: Ypres, Belgium, 2013. [Google Scholar]
  16. Anand Gopalan, A.W. Automatic Slave Node Position Detection; Technical Report; TexasInstruments: Dallas, TX, USA, 2015. [Google Scholar]
  17. Westrick, R.L.; Zulim, D. Automatic Self-Addressing Method for Wired Network Nodes; Technical Report; Patent Office: Washington, DC, USA, 2010. [Google Scholar]
  18. Bhojwani, H.; Sain, G.K.; Sharma, G.P. Computerized Fuse Auto Changeover System with RS485 Bus Reporting Multiple IOT Cloud Connectivity Avenues. In Proceedings of the 2018 3rd Technology Innovation Management and Engineering Science International Conference (TIMES-iCON), Bangkok, Thailand, 12–14 December 2018; pp. 1–5. [Google Scholar] [CrossRef]
  19. Yamar. Automatic Slave Node Position Detection; Technical Report; Yamar: Tel Aviv, Israel, 2015. [Google Scholar]
  20. Strobl, M.; Waas, T.; Moehne, S.; Kucera, M.; Rath, A.; Balbierer, N.; Schingale, A. Using Ethernet over powerline communication in automotive networks. In Proceedings of the 10th International Workshop on Intelligent Solutions in Embedded Systems, Klagenfurt, Austria, 5–6 July 2012; pp. 39–44. [Google Scholar]
  21. Commission, I.E. Low-Voltage Switchgear and Controlgear—Controller-Device Interfaces; Technical Report; International Electrotechnical Commission: Geneva, Switzerland, 2008. [Google Scholar]
  22. Wilkie, K.; Foster, M.; Stone, D.; Bingham, C. Hardware-in-the-loop tuning of a feedback controller for a buck converter using a GA. In Proceedings of the 2008 International Symposium on Power Electronics, Electrical Drives, Automation and Motion, Ischia, Italy, 11–13 June 2008; pp. 680–684. [Google Scholar] [CrossRef] [Green Version]
  23. Wei, J.; Mouzakitis, A.; Wang, J.; Sun, H. Vehicle windscreen wiper mathematical model development and optimisation for model based hardware-in-the-loop simulation and control. In Proceedings of the 17th International Conference on Automation and Computing, Huddersfield, UK, 10 September 2011; pp. 207–212. [Google Scholar]
  24. Angel, L.; Viola, J.; Vega, M. Hardware in the loop experimental validation of PID controllers tuned by genetic algorithms. In Proceedings of the 2019 IEEE 4th Colombian Conference on Automatic Control (CCAC), Medellin, Colombia, 15–18 October 2019; pp. 1–6. [Google Scholar] [CrossRef]
  25. Stopiński, S.; Anders, K.; Szostak, S.; Piramidowicz, R. Optical Time Domain Reflectometer Based on Application Specific Photonic Integrated Circuit. In Proceedings of the 2019 Conference on Lasers and Electro-Optics Europe European Quantum Electronics Conference (CLEO/Europe-EQEC), Munich, Germany, 23–27 June 2019; p. 1. [Google Scholar] [CrossRef]
  26. McClements, D.; Fairley, P. Frequency scanning ultrasonic pulse echo reflectometer. Ultrasonics 1992, 30, 403–405. [Google Scholar] [CrossRef]
  27. Tsai, P.; Lo, C.; Chung, Y.C.; Furse, C. Mixed-signal reflectometer for location of faults on aging wiring. IEEE Sens. J. 2005, 5, 1479–1482. [Google Scholar] [CrossRef]
  28. Alluhaibi, O.; Ahmed, Q.Z.; Kampert, E.; Higgins, M.D.; Wang, J. Revisiting the Energy-Efficient Hybrid D-A Precoding and Combining Design for mm-Wave Systems. IEEE Trans. Green Commun. Netw. 2020, 4, 340–354. [Google Scholar] [CrossRef]
  29. Spiess, A. How Good are the ADCs Inside Arduinos, ESP8266, and ESP32? And Extenal ADCs (ADS1115); Technical Report; Andreas: Basel, Switzerland, 2020. [Google Scholar]
  30. Deb, M. Multi-Objective Optimization Using Evolutionary Algorithms; Wiley: Hoboken, NJ, USA, 2009. [Google Scholar]
  31. Kennedy, J.; Eberhart, R.C.; Shi, Y. Preface. In Swarm Intelligence; The Morgan Kaufmann Series in Artificial Intelligence; Morgan Kaufmann: San Francisco, CA, USA, 2001; pp. 8–27. [Google Scholar] [CrossRef]
  32. Ahmed, Q.Z.; Ahmed, S.; Alouini, M.S.; Aïssa, S. Minimizing the Symbol-Error-Rate for Amplify-and-Forward Relaying Systems Using Evolutionary Algorithms. IEEE Trans. Commun. 2015, 63, 390–400. [Google Scholar] [CrossRef]
  33. Soo, K.K.; Siu, Y.M.; Chan, W.S.; Yang, L.; Chen, R.S. Particle-Swarm-Optimization-Based Multiuser Detector for CDMA Communications. IEEE Trans. Veh. Technol. 2007, 56, 3006–3013. [Google Scholar] [CrossRef]
  34. Trelea, I.C. The particle swarm optimization algorithm: Convergence analysis and parameter selection. Inf. Process. Lett. 2003, 85, 317–325. [Google Scholar] [CrossRef]
  35. Brest, J.; Greiner, S.; Boskovic, B.; Mernik, M.; Zumer, V. Self-Adapting Control Parameters in Differential Evolution: A Comparative Study on Numerical Benchmark Problems. IEEE Trans. Evol. Comput. 2006, 10, 646–657. [Google Scholar] [CrossRef]
  36. Clerc, M.; Kennedy, J. The particle swarm—Explosion, stability, and convergence in a multidimensional complex space. IEEE Trans. Evol. Comput. 2002, 6, 58–73. [Google Scholar] [CrossRef] [Green Version]
  37. Katunin, A.; Przystałka, P. Damage assessment in composite plates using fractional wavelet transform of modal shapes with optimized selection of spatial wavelets. Eng. Appl. Artif. Intell. 2014, 30, 73–85. [Google Scholar] [CrossRef]
  38. Zhao, Y.; Zheng, J. Particle swarm optimization algorithm in signal detection and blind extraction. In Proceedings of the 7th International Symposium on Parallel Architectures, Algorithms and Networks, Hong Kong, China, 10–12 May 2004; pp. 37–41. [Google Scholar] [CrossRef]
Figure 1. Proof of concept of DLN solution.
Figure 1. Proof of concept of DLN solution.
Applsci 11 08709 g001
Figure 2. Oscillograms from transmission line.
Figure 2. Oscillograms from transmission line.
Applsci 11 08709 g002
Figure 3. Auto-addressing signal. (a) Standard signal (b) Zoom to auto-addressing pulse (c) Zoom for preparationline to the first pulse (d) Zoom to pulse generation and sampling the answer on the line.
Figure 3. Auto-addressing signal. (a) Standard signal (b) Zoom to auto-addressing pulse (c) Zoom for preparationline to the first pulse (d) Zoom to pulse generation and sampling the answer on the line.
Applsci 11 08709 g003
Figure 4. Schematic of pulse generator.
Figure 4. Schematic of pulse generator.
Applsci 11 08709 g004
Figure 5. Schematic of LC terminators.
Figure 5. Schematic of LC terminators.
Applsci 11 08709 g005
Figure 6. A data flow between research stand modules.
Figure 6. A data flow between research stand modules.
Applsci 11 08709 g006
Figure 7. Master and clients in Hardware-In-The-Loop during operation.
Figure 7. Master and clients in Hardware-In-The-Loop during operation.
Applsci 11 08709 g007
Figure 8. General scheme of the proposed method.
Figure 8. General scheme of the proposed method.
Applsci 11 08709 g008
Figure 9. One of the characteristic trends of the addresses value.
Figure 9. One of the characteristic trends of the addresses value.
Applsci 11 08709 g009
Figure 10. LHS result.
Figure 10. LHS result.
Applsci 11 08709 g010
Figure 11. Number of correct solutions, depending on algorithm parameters.
Figure 11. Number of correct solutions, depending on algorithm parameters.
Applsci 11 08709 g011
Figure 12. Comparison of population size.
Figure 12. Comparison of population size.
Applsci 11 08709 g012
Figure 13. Comparison of crossover fraction.
Figure 13. Comparison of crossover fraction.
Applsci 11 08709 g013
Figure 14. Comparison of crossover function.
Figure 14. Comparison of crossover function.
Applsci 11 08709 g014
Figure 15. Particle Swarm Optimization. Swarm size: 50. Black ball—LHS. Others, see Table above.
Figure 15. Particle Swarm Optimization. Swarm size: 50. Black ball—LHS. Others, see Table above.
Applsci 11 08709 g015
Figure 16. Particle Swarm Optimization. Swarm size: 100. Black ball—LHS. Others, see Table above.
Figure 16. Particle Swarm Optimization. Swarm size: 100. Black ball—LHS. Others, see Table above.
Applsci 11 08709 g016
Figure 17. Particle Swarm Optimization. Swarm size: 200. Black ball—LHS. Others, see Table above.
Figure 17. Particle Swarm Optimization. Swarm size: 200. Black ball—LHS. Others, see Table above.
Applsci 11 08709 g017
Figure 18. Bubble visualization of quantitative results of different PSO configurations.
Figure 18. Bubble visualization of quantitative results of different PSO configurations.
Applsci 11 08709 g018
Figure 19. Results from all algorithms. Black ball—LHS. Red fronts and diamonds—GA, Blue x—PSO.
Figure 19. Results from all algorithms. Black ball—LHS. Red fronts and diamonds—GA, Blue x—PSO.
Applsci 11 08709 g019
Table 1. The components of the LC terminator.
Table 1. The components of the LC terminator.
InductorCapacitor
1330 nH330 pF
21 μ H1 nF
33.3 μ H3.3 nF
410 μ H10 nF
533 μ H33 nF
6100 μ H100 nF
7330 μ H330 nF
81 mH1 μ F
Table 2. A list of decision variables with descriptions.
Table 2. A list of decision variables with descriptions.
IndicatorRangeDescription
p s 1 1–150 [ μ s ](Signal A22)—Pulse generator charging time. See Figure 3
p h 1 1–9Selection capacitor on Master (see Table 1).
p h 2 1–9Selection coil on Master. See Table 1
p h 3 1–9Selection capacitor on Client. See Table 1
p h 4 1–9Selection coil on Client. See Table 1
p s 2 1–999 [ μ s ](Signal A31)—delay before first ADC measure. See Figure 3
p s 3 1–40 [ μ s ](Signal A32)—delay between ADC measure. See Figure 3
p s 4 1–4Strategy of using coils and capacitors—see Table 3 and Table 4
p s 5 0–7Method of data analysing
0—median; 1—mean; 2—max; 3—min; 4—mode;
5—sum-max/size; 6—value of C0—See Figure 3b;
7—max-min;
p s 6 0–3Source of data for analysing
0—S0—See Figure 3d—ADC
1—S1—See Figure 3d—ADC
2—S2—See Figure 3d—ADC
3—S3—See Figure 3d—ADC
p s 7 1–4Define addresses trend
1—rising trend
2—falling trend
3—rising trend + replace last address
4—falling trend + replace last address
p h 5 2–8Coil selection to pulse generator—Master only—Figure 4
p h 6 0–11—use termination resistor on Master board
0—do not use
p h 7 0–11—use termination resistor on Client board
0—do not use
Table 3. The 1st strategy.
Table 3. The 1st strategy.
MasterClient1Client2Client n−1Client n
R011111
R110111
R211011
Rn−111101
Rn11110
Table 4. The 3rd strategy.
Table 4. The 3rd strategy.
MasterClient1Client2Client n−1Client n
R010000
R111000
R211100
Rn−111110
Rn11111
Table 5. S23ameters. Colour code: Green → the best; light green → better than 70% of best; orange → better than 40% of best; red → worst than 40% of best.
Table 5. S23ameters. Colour code: Green → the best; light green → better than 70% of best; orange → better than 40% of best; red → worst than 40% of best.
Population SizeSumCoefficient FractionSumCrossover HeuristicSum
2001720.41251.194
125860.6971.2148
1001060.8661.4124
5020.978
Table 6. Colour codes for figures.
Table 6. Colour codes for figures.
Generation (Population)Crossover FractionCrossover HeuristicColor Code in Figure 12, Figure 13 and Figure 14
value50 (200)0.41.1red
80 (125)0.61.2blue
100 (100)0.81.4green
200 (50)0.9 yellow
Table 8. Sum of correct results using specific PSO parameters. Colour code: green → the best; light green → better than 70% of best; orange → better than 40% of best; red → worst than 40% of best.
Table 8. Sum of correct results using specific PSO parameters. Colour code: green → the best; light green → better than 70% of best; orange → better than 40% of best; red → worst than 40% of best.
Swarm SizeSum b 1 SumMNFSum
50140.5290.1220
100281.5430.2545
200512.5200.528
3.51
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Sznura, M.; Przystałka, P. Development of a Power and Communication Bus Using HIL and Computational Intelligence. Appl. Sci. 2021, 11, 8709. https://doi.org/10.3390/app11188709

AMA Style

Sznura M, Przystałka P. Development of a Power and Communication Bus Using HIL and Computational Intelligence. Applied Sciences. 2021; 11(18):8709. https://doi.org/10.3390/app11188709

Chicago/Turabian Style

Sznura, Marek, and Piotr Przystałka. 2021. "Development of a Power and Communication Bus Using HIL and Computational Intelligence" Applied Sciences 11, no. 18: 8709. https://doi.org/10.3390/app11188709

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop