CN114443414A - Intelligent health management fan control method based on IPMI bus - Google Patents
Intelligent health management fan control method based on IPMI bus Download PDFInfo
- Publication number
- CN114443414A CN114443414A CN202111571998.7A CN202111571998A CN114443414A CN 114443414 A CN114443414 A CN 114443414A CN 202111571998 A CN202111571998 A CN 202111571998A CN 114443414 A CN114443414 A CN 114443414A
- Authority
- CN
- China
- Prior art keywords
- fan
- data
- ipmb
- gear
- health management
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3027—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a bus
Abstract
The invention discloses a health management intelligent fan control method based on an IPMI bus, which comprises the following steps: s100, initializing and setting, namely initializing and configuring a processor operating environment, an IPMB interface and a fan control interface; s200, fan data are obtained, and equipment ID, fan information and a current fan gear are obtained through IPMB data receiving and sending; s300, a fan gear is set, and the fan gear is determined through IPMB data transceiving. The invention can acquire the ID, the rotating speed information and the gear information of the fan, and control the start, the stop and the gear of the fan, so that the control function of the fan is more comprehensive.
Description
Technical Field
The invention belongs to the technical field of fan management, and particularly relates to a health management intelligent fan control method based on an IPMI bus.
Background
The occasions for using the case are more and more abundant, and the fan control technology used on the case is increasingly strong. The common case fan in the current market controls the fan by controlling input voltage and current. The fan is simply controlled by controlling the input voltage and the current, the fan operation information and the fan operation state cannot be acquired, and the control requirement of the prior art on the fan cannot be met.
Disclosure of Invention
Aiming at the problems in the prior art, the invention provides a health management intelligent fan control method based on an IPMI bus.
A health management intelligent fan control method based on an IPMI bus comprises the following steps:
s100, initializing and setting, namely initializing and configuring a processor operating environment, an IPMB interface and a fan control interface;
s200, fan data are obtained, and equipment ID, fan information and the current fan gear are obtained through IPMB data receiving and sending;
s300, a fan gear is set, and the fan gear is determined through IPMB data transceiving.
In the initialization setting of S100, after the initialization of the fan control interface is completed, the default rotating speed of the fan is set to be the maximum rotating speed.
S300 sets a gear position of the fan, and when the gear position value in the request data is a minimum value and a maximum value, stop and start control of the fan are indicated, respectively.
S200, fan information including the highest rotating speed, the lowest rotating speed and the default rotating speed of the fan is obtained from fan data.
The invention has the beneficial effects that: the invention can acquire the ID, the rotating speed information and the gear information of the fan, and control the start, the stop and the gear of the fan, so that the control function of the fan is more comprehensive.
Drawings
FIG. 1 is a schematic diagram of a system for carrying out the method of the present invention;
FIG. 2 is a schematic diagram of a data processing process of a fan control system in a process of controlling a fan;
FIG. 3 is a flow chart illustrating IPMB receiving data;
FIG. 4 is a flow chart illustrating IPMB data transmission;
FIG. 5 is a schematic view of a data processing flow for obtaining a device ID;
FIG. 6 is a schematic view of a data processing flow for obtaining fan information;
FIG. 7 is a schematic view of a data processing flow for obtaining a fan gear;
fig. 8 is a schematic view of a data processing flow for setting a fan gear.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are some, but not all, embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Examples
The intelligent fan control method for health management is realized based on an IPMI bus, and the specific realization of the intelligent fan control method depends on the combination of a management system 1, a fan control system 2 and a controlled fan 3, and is shown in figure 1. The management system 1 and the fan control system 2 realize communication control through an IPMI protocol, the management system 1 and the fan control system 2 are both provided with interfaces capable of realizing communication of the IPMI protocol, and the management system 1 receives and sends IPMI data and forms an IPMI command through the fan control system 2 to control the fan 3.
Referring to fig. 2, a data processing process of the fan control system 2 in the process of controlling the fan 3 is implemented. In the figure, data processing procedures implemented in the fan control system 2 are indicated within dashed boxes.
According to fig. 2, the health management intelligent fan control method of the invention comprises the following steps:
s100, initializing, wherein an initialization module of LKS6.672.724 fan control combination software is in a modular design and comprises a processor operating environment initialization module, two IPMB interface initialization modules and a fan control interface initialization module, and the initialization is that operating environment initialization, IPMB interface initialization and fan control interface initialization are correspondingly performed.
The initialization module of the running environment of the processor mainly completes the configuration and the starting of a system clock, and comprises the selection of a clock source, the setting of PLL frequency multiplication factor, AHB/APBx frequency division factor and the like. The processor running environment initialization module is only executed in the first step of the running of the main program after the chip is reset. The processor operating environment initialization module is a part of a main program code segment, the called functions comprise rcu _ config, i2c _ nvic _ config and i2c _ interrupt _ enable, the functions are provided by an SDK development kit, and the interface configuration is as follows:
the initialization of the IPMB interface is the initialization of the I2C interface, the initialization of the I2C mainly configures the working modes of the Pin _8 Pin of the GPIOA module, the Pin _9 Pin of the GPIOC module, the Pin _8 Pin of the GPIOB module and the Pin _9 Pin of the GPIOB module, including the input/output mode, the speed and the like, and maps the two I/O pins into the I2C Pin function to enable the GPIOA, the GPIOB, the GPIOC module and the I2C clock; configuring the working modes of I2C, including SCL clock line duty ratio, self-address of the equipment, whether ACK is sent, I2C addressing mode, communication speed and the like; at the same time, configuration I2C interrupts and enables the I2C module. I2C initializes the module correspondence function definition as void init _ I2c (uint32_ tself _ addr). The input parameter self _ addr of this function is the hardware address of I2C. The function returns no value. The file is i2c.c. The function called by the I2C module to initialize the function includes:
I2C clock configuration: i2c _ clock _ config
I2C address configuration: i2c _ mode _ addr _ config
The I2C controller enables: i2c _ enable
I2C auto ACK enable: i2c _ ack _ config
The fan control interface initialization is to the PWM controller. The PWM controller interfaces are as follows timer _ config, open _ PWM, set _ PWM _ duty. timer _ config is the timer initialization that the PWM depends on, open _ PWM is the opening PWM control, so that the PWM module starts to work, and set _ PWM _ duty is the duty ratio setting, namely the gear control of the fan. And after the fan control interface completes initialization, setting the default rotating speed of the fan as the maximum rotating speed.
S200, fan data acquisition, including equipment ID acquisition, fan information acquisition and fan gear acquisition.
Referring to FIG. 2, fan data acquisition relies on IPMB data transceiver module to IPMB data transmission. The IPMB data transceiver module mainly comprises data receiving, data transmitting and data checking, data interaction between LKS6.672.724 fan control combination software and other modules is realized through IPMB interruption, and the IPMB data transceiver module has a data fault tolerance processing function in the data receiving process. Therefore, the IPMB data transceiver module consists of an IPMB data receiving module, an IPMB data transmitting module and a data checking module.
The upper layer application receives IPMB data through the IPMB receiving module, the received data is a complete IPMB data packet, the received data packet is correct data through verification and comparison, the receiving module is realized in a mode of hooking and interrupting, and the data receiving process is shown in FIG. 3.
The upper layer application submits the data to be sent to the IPMB sending module, the IPMB sending module can automatically fill the IPMB data packet, calculate the check value, add the check result after the IPMB data packet, and finally send the IPMB data, and the data sending program is shown in FIG. 4.
After the upper layer application submits the check data and the length, the check module accumulates the start address of the data by taking bytes as a unit, the accumulation times are the length of the submitted data, and the accumulation result caller is returned after the accumulation is finished. The accumulated result is stored in 8 bits without sign.
The IPMB data transceiver module is implemented by the functions void I2Cx _ eventtirq _ handler (void) and void I2c _ data _ send (uint32_ t I2c _ period, uint32_ t slave, uint8_ t send _ data _ buffer, uint8_ t Byte _ count). The function mainly completes the receiving and sending of the IPMB data and verifies the received or sent data. Receiving an interrupt function without input parameters or output parameters, ensuring interrupt response time, copying received data to a buffer area, and waiting for a main program to process; the transmission function I2c _ periph represents an I2C peripheral, the slave represents a peer address, and the send _ data _ buffer represents transmitted data. The files of the system are i2c.c and ipmb.c.
Based on the above data processing procedure, the Device id (get Device id) is obtained, and refer to fig. 5:
module identification: ErrStatus IPMB _ getdeviceiidrep (uint8_ t buffer);
description of the function: acquiring the software version, IPMI version, equipment ID, product information and the like of the board card;
inputting: uint8_ t _ buffer represents Get Device ID request data;
and returning: operating state, SUCCESS indicates that the process was successful and no error occurred; ERROR indicates that an exception and unknown ERROR occurred during the process.
Fan information acquisition (Get Fan Speed Properties) is explained, see fig. 6:
module identification: ErrStatus IPMB _ GetFanSpeedPortertiesResp (uint8_ t. buffer);
description of the function: acquiring the highest rotating speed, the lowest rotating speed and the default rotating speed of the fan;
inputting: the agent 8_ t × buffer represents GetFan SpeedProperties request data;
and returning: operating state, SUCCESS indicates that the process was successful and no error occurred; ERROR indicates that an exception and unknown ERROR occurred during the process.
The obtaining of the fan gear (GetFanLevel) is explained with reference to fig. 7:
module identification: ErrStatus IPMB _ GetFanLevelResp (uint8_ t × buffer);
description of the function: acquiring current state data of the fan, such as a current state code and a rotating speed;
inputting: the uint8_ t _ buffer represents GetFanLevel request data;
and returning: operating state, SUCCESS indicates that the process was successful and no error occurred; ERROR indicates that an exception and unknown ERROR occurred during the process.
S300, setting a fan position (SetFanLevel), which will be described with reference to fig. 8.
Module identification: ErrStatus IPMB _ SetFanLevelResp (uint8_ t × buffer);
description of the function: setting the rotating speed of the fan;
inputting: the uint8_ t × buffer represents SetFanLevel request data, and represents stop and start control of the fan when the gear value in the request data is the minimum value and the maximum value, respectively;
and returning: operating state, SUCCESS indicates that the process was successful and no error occurred; ERROR indicates that an exception and unknown ERROR occurred during the process.
It is noted that, in this document, relational terms such as first and second, and the like, if any, are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element.
The above examples are only intended to illustrate the technical solution of the present invention, but not to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions of the embodiments of the present invention.
Claims (4)
1. A health management intelligent fan control method based on an IPMI bus is characterized by comprising the following steps:
s100, initializing and setting, namely initializing and configuring a processor operating environment, an IPMB interface and a fan control interface;
s200, fan data are obtained, and equipment ID, fan information and the current fan gear are obtained through IPMB data receiving and sending;
s300, a fan gear is set, and the fan gear is determined through IPMB data transceiving.
2. The IPMI bus based health management intelligent fan control method of claim 1, wherein in S100 initialization, after the fan control interface is initialized, the default fan speed is set to the maximum fan speed.
3. The method of claim 1, wherein the S300 sets the fan gear positions to represent the fan stop and start control when the gear position in the request data is a minimum value and a maximum value, respectively.
4. The IPMI bus based health management intelligent fan control method of claim 1, wherein S200 obtains fan data including maximum fan speed, minimum fan speed, default fan speed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111571998.7A CN114443414A (en) | 2021-12-21 | 2021-12-21 | Intelligent health management fan control method based on IPMI bus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111571998.7A CN114443414A (en) | 2021-12-21 | 2021-12-21 | Intelligent health management fan control method based on IPMI bus |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114443414A true CN114443414A (en) | 2022-05-06 |
Family
ID=81363892
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111571998.7A Pending CN114443414A (en) | 2021-12-21 | 2021-12-21 | Intelligent health management fan control method based on IPMI bus |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114443414A (en) |
-
2021
- 2021-12-21 CN CN202111571998.7A patent/CN114443414A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019184444A1 (en) | Master-slave configuration communication protocol, method for improving compatibility, and electronic device | |
WO2020036897A1 (en) | Low latency virtual general purpose input/output over i3c | |
US20180260357A1 (en) | I2c clock stretch over i3c bus | |
CN109032623A (en) | A kind of initial method and BIOS mirror image of BIOS mirror image | |
WO2023082622A1 (en) | Method for designing communication module having master and slave devices compatible, and apparatus | |
CN112835839A (en) | PCIe interface device enumeration method, PCIe interface device enumeration apparatus, PCIe interface device and PCIe interface storage medium | |
CN115101071A (en) | Low-power-consumption Bluetooth voice control terminal, method, device and equipment | |
CN112462661B (en) | Industrial data acquisition controller and control method thereof | |
WO2024037376A1 (en) | Service management method and apparatus, device and readable storage medium | |
WO2017049556A1 (en) | Data transmission method and mobile terminal | |
JPH08129199A (en) | Camera body, camera accessory and camera system | |
CN116431546B (en) | Parameter configuration method, electronic device, storage medium, and program product | |
CN114443414A (en) | Intelligent health management fan control method based on IPMI bus | |
CN112579506A (en) | BIOS and BMC communication method, BIOS, BMC and server | |
US20180143928A1 (en) | Switch system and operation method thereof | |
CN110750478A (en) | Multi-serial port communication method and system | |
CN115994111A (en) | Data processing circuit, method, chip and electronic equipment | |
CN108965382A (en) | A kind of document transmission method based on BMC, device, equipment and medium | |
US6553415B1 (en) | System for rescheduling cascaded callback functions to complete an asynchronous physical layer initialization process | |
CN111030722B (en) | Communication circuit and communication method for battery management system | |
CN111782574A (en) | Serial peripheral interface control method and serial peripheral interface controller | |
CN106354683B (en) | Micro-control device and input/output system applied to micro-control device | |
CN106445571B (en) | Mainboard and starting method | |
CN106101784B (en) | A kind of repositioning method and device of smart television control Bluetooth chip | |
CN117850570A (en) | Singlechip system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |