Air blowing system
Fan units in a shared communication bus system autonomously generate addresses and roles to facilitate individual identification and control, addressing the challenge of limited I2C addresses without adding wires, ensuring efficient operation.
Patent Information
- Application Number
- PCT/JP2025/019716
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-05-31
- Filing Date
- 2025-05-30
- Publication Date
- 2025-12-04
AI Technical Summary
Existing fan systems face challenges in individually identifying multiple fan units sharing a communication bus without increasing the number of wires, as the I2C communication standard limits addresses, making manual configuration difficult and unwelcome to customers.
A method where each fan unit generates a random number to determine a unique address and standby time, then communicates to establish a master-slave relationship, allowing for address assignment without additional wires, and facilitates communication through a shared bus.
Enables individual identification and control of fan units within a multi-fan system using a shared communication bus, ensuring efficient operation without requiring extra wires.
Smart Images

Figure JP2025019716_04122025_PF_FP_ABST
Abstract
Description
ventilation system
[0001] This application claims priority from Japanese Patent Application No. 2024-089462, filed May 31, 2024, the contents of which are incorporated herein by reference.
[0002] One type of fan device known is a multi-fan device equipped with multiple single fan devices. A multi-fan device is constructed by combining multiple single fan devices together. In recent years, attempts have been made to connect multiple multi-fan devices to a communication bus conforming to the I2C (Inter-Integrated Circuit) communication standard and individually control the rotation speed of the single fan devices included in each multi-fan device. To individually control the rotation speed of the single fan devices included in each multi-fan device, it is necessary to assign an address to each single fan device, thereby enabling individual identification of each single fan device.
[0003] In an I2C communication system that complies with the I2C communication standard, 112 addresses can be assigned to nodes (I2C devices), excluding 16 reserved addresses, so a maximum of 112 I2C devices can be connected to the same communication bus. Since multiple I2C devices with the same address cannot be connected to the same communication bus, the address of each I2C device must be set so that addresses do not overlap.
[0004] It is extremely difficult to configure addresses for mass-produced I2C devices to match the customer's system before shipping. However, it is not possible to provide customers with I2C devices equipped with address configuration functionality and force them to configure the addresses themselves. While it is possible to automatically configure the addresses of each I2C device by increasing the number of wires on the communication bus, customers would not welcome the idea of increasing the number of wires on an existing communication bus. Patent Document 1 discloses a technology that makes it easy to build a system without configuring an ID for each device, but this requires adding two dedicated wires to the existing communication bus.
[0005] Japanese Patent Application Publication No. 2022-99027
[0006] As described above, there has been a demand for the development of technology that makes it easy to individually identify multiple single-fan units included in multiple multi-fan units that share the same communication bus, without increasing the number of wires in the existing communication bus.
[0007] One aspect of the air blowing system of the present invention includes a plurality of fan devices that share a communication bus, each of the plurality of fan devices including a first fan device having first software and a second fan device having second software, and the first fan device and the second fan device each execute a first process of acquiring a random number, a second process of generating an address of the first fan device and a first standby time based on the random number, a third process of starting time measurement, a fourth process of determining the first fan device as a master if the first standby time is reached without being accessed by another device that shares the communication bus, a fifth process of accessing the other device via the communication bus immediately after determining the first fan device as the master, and a sixth process of determining the first fan device as a slave if the first fan device is accessed by the other device via the communication bus before the first standby time is reached, and the first fan device generates an address that satisfies a first condition as its address in the second process, and the second fan device generates an address that satisfies a second condition as its address in the second process.
[0008] According to the above aspects of the present invention, there is provided an air blowing system that facilitates individual identification of a plurality of single fan units included in each of a plurality of multi-fan units that share the same communication bus.
[0009] FIG. 1 is a diagram schematically illustrating the configuration of an air blowing system in this embodiment. FIG. 2 is a diagram schematically illustrating the configuration of a first fan unit and a second fan unit included in each dual fan unit. FIG. 3 is a first flowchart showing processing executed by the first fan unit according to first software. FIG. 4 is a second flowchart showing processing executed by the first fan unit according to the first software. FIG. 5 is a third flowchart showing processing executed by the first fan unit according to the first software. FIG. 6 is a flowchart showing first identification processing executed by the first fan unit or the second fan unit that has determined itself as the master. FIG. 7 is a flowchart showing second identification processing executed by the first fan unit or the second fan unit that has determined itself as the master. FIG. 8 is a flowchart showing processing executed by the upper control unit that serves as the master.
[0010] An embodiment of the present invention will be described in detail below with reference to the drawings. Fig. 1 is a diagram schematically illustrating the configuration of a ventilation system 1 according to this embodiment. As shown in Fig. 1, the ventilation system 1 includes a plurality of dual fan units 10, a host control device 20, a communication bus 30, and a power line 40. In this embodiment, an example of the ventilation system 1 includes three dual fan units 10, but the number of dual fan units 10 is not limited to three.
[0011] The three dual fan units 10 share a communication bus 30. The upper control device 20 shares the communication bus 30 with the three dual fan units 10. That is, the three dual fan units 10 and the upper control device 20 communicate with each other via the communication bus 30. For example, in this embodiment, the three dual fan units 10 and the upper control device 20 communicate with each other in accordance with the I2C communication standard. The communication bus 30 conforming to the I2C communication standard includes a clock signal line 31 and a data line 32. The three dual fan units 10 and the upper control device 20 are electrically connected to the clock signal line 31 and the data line 32, respectively.
[0012] The three dual fan units 10 and the upper control unit 20 share a power line 40. The power line 40 includes a power supply line 41 and a ground line 42. The three dual fan units 10 and the upper control unit 20 are electrically connected to the power supply line 41 and the ground line 42, respectively. Although not shown in FIG. 1 , the clock signal line 31 and the data line 32 are electrically connected to the power supply line 41 via pull-up resistors.
[0013] Each of the three dual fan units 10 includes a first fan unit 11 having first software and a second fan unit 12 having second software. The first fan unit 11 is a single fan unit that operates according to the first software. The second fan unit 12 is a single fan unit that operates according to second software that is different from the first software. In this way, the dual fan unit 10 is a multi-fan unit equipped with two single fan units.
[0014] In each dual fan unit 10, the first fan unit 11 and the second fan unit 12 are arranged in series. In this embodiment, the first fan unit 11 is arranged on the inlet side of the dual fan unit 10, and the second fan unit 12 is arranged on the outlet side of the dual fan unit 10. In other words, air taken into the interior of the dual fan unit 10 by the first fan unit 11 is blown out of the dual fan unit 10 by the second fan unit 12. Alternatively, the first fan unit 11 may be arranged on the outlet side of the dual fan unit 10, and the second fan unit 12 may be arranged on the inlet side of the dual fan unit 10.
[0015] In the following description, when it is necessary to distinguish between the three dual fan units 10, the three dual fan units 10 may be referred to as dual fan unit 10A, dual fan unit 10B, and dual fan unit 10C, respectively.
[0016] In the following description, the first fan unit 11 and the second fan unit 12 included in the dual fan unit 10A may be referred to as the first fan unit 11A and the second fan unit 12A. The first fan unit 11 and the second fan unit 12 included in the dual fan unit 10B may be referred to as the first fan unit 11B and the second fan unit 12B. The first fan unit 11 and the second fan unit 12 included in the dual fan unit 10C may be referred to as the first fan unit 11C and the second fan unit 12C.
[0017] 2 is a diagram schematically illustrating the configuration of the first fan unit 11 and the second fan unit 12 included in each dual fan unit 10. As shown in FIG. 2, the first fan unit 11 and the second fan unit 12 are electrically connected to the communication bus 30 and the power line 40, respectively.
[0018] The first fan device 11 includes a first control unit 51, a first storage unit 52, a first motor 53, and a first impeller 54. The first control unit 51 executes various processes in accordance with first software pre-stored in the first storage unit 52. For example, the first control unit 51 performs I2C communication via the communication bus 30. The first control unit 51 also controls the first motor 53. The first impeller 54 is attached to the shaft of the first motor 53. The first motor 53 rotates in response to a drive signal supplied from the first control unit 51, thereby rotating the first impeller 54.
[0019] The second fan device 12 includes a second control unit 61, a second storage unit 62, a second motor 63, and a second impeller 64. The second control unit 61 executes various processes in accordance with second software pre-stored in the second storage unit 62. For example, the second control unit 61 performs I2C communication via the communication bus 30. The second control unit 61 also controls the second motor 63. The second impeller 64 is attached to the shaft of the second motor 63. The second motor 63 rotates in response to a drive signal supplied from the second control unit 61, thereby rotating the second impeller 64.
[0020] For example, the first control unit 51 and the second control unit 61 are processors such as MCUs (Microcontroller Units). Also, for example, the first storage unit 52 and the second storage unit 62 include a non-volatile memory that stores software such as programs, and a volatile memory that is used as a temporary storage destination for data.
[0021] The following describes the processing executed by the first control unit 51 of the first fan unit 11 included in each dual fan unit 10 in accordance with the first software, with reference to Figures 3 to 5. Figure 3 is a first flowchart showing the processing executed by the first control unit 51. Figure 4 is a second flowchart showing the processing executed by the first control unit 51. Figure 5 is a third flowchart showing the processing executed by the first control unit 51.
[0022] 3, when the power supply to the air blowing system 1 is turned on and a power supply voltage is supplied via the power line 41, the first control unit 51 executes an initialization process and starts counting down the I2C timeout (step S1). As part of the initialization process, the first control unit 51 resets the values of all flags to 0.
[0023] Next, the first control unit 51 determines whether a random number has been acquired based on the value of the first flag F1 (step S2). Specifically, in step S2, the first control unit 51 determines whether the value of the first flag F1 is 1. If the first control unit 51 determines that a random number has not been acquired, i.e., if the value of the first flag F1 is 0 (step S2: NO), it executes the process described below to acquire a random number (step S3).
[0024] For example, in step S3, the first control unit 51 acquires data of the lowest 8 bits of a timer or AD converter having an arbitrary bit length of 8 or more at random timing to acquire a random number within the range of 0 to 255. In this case, the timer or AD converter built into the first control unit 51 can be used to acquire the random number.
[0025] An example of random timing is the timing of a rising edge or a falling edge of the Hall signal output from the Hall element of the first motor 53. Another example of random timing is the timing when locking of the first motor 53 is detected. In this manner, random numbers may be generated within each dual fan unit 10. This also includes obtaining random numbers. These random timings are merely examples, and any event that can obtain random timing may be used. The first control unit 51 may also obtain random numbers by executing an algorithm that calculates random numbers. After obtaining the random numbers through the above process, the first control unit 51 sets the value of the first flag F1 to 1.
[0026] Next, the first control unit 51 generates an address of the device itself and a random wait time based on the acquired random number (step S4). The random wait time is an example of a first standby time. For example, in step S4, the first control unit 51 generates an address of the device itself by dividing the random number by a divisor n that is equal to or less than 127 and adding an offset value to the remainder.
[0027] In I2C communication, where addresses are represented by 7 bits, the total number of addresses, including reserved addresses that cannot be used, is 127. Therefore, the random number used to generate the address of the device itself must be 127 or less. Therefore, as described above, the remainder obtained by dividing the random number by a divisor n that is 127 or less is used to generate the address of the device itself. For example, the divisor n is a value between 1 and 111. Furthermore, in I2C communication, addresses 8 through 119 are permitted to be used, but in the air blowing system 1 of this embodiment, address 8 is used as the master address, so an offset value of 9 is used. In other words, in step S4, one of addresses 9 through 119 is generated as the address of the device itself.
[0028] Here, the first control unit 51 generates an address that satisfies a first condition from among randomly determined addresses numbered 9 to 119 as the address of its own device. For example, an address that satisfies the first condition is an odd-numbered address. In other words, the first control unit 51 generates an odd-numbered address from among randomly determined addresses numbered 9 to 119 as the address of its own device.
[0029] In step S4, the first control unit 51 generates a random wait time by multiplying the random number by a proportionality constant. For example, the proportionality constant is 8.18 msec. When the random number varies within a range from 0 to 255, the random wait time varies within a range from 0 to approximately 2 seconds.
[0030] After generating the address and random wait time of its own device as described above, the first control unit 51 proceeds to step S5 shown in Fig. 4. Furthermore, in step S2, if the first control unit 51 determines that a random number has been acquired, i.e., if the value of the first flag F1 is 1 (step S2: YES), it skips the processes of steps S3 and S4 and proceeds to step S5 shown in Fig. 4.
[0031] 4, when the first control unit 51 proceeds to step S5, it determines whether or not the own device has been determined as a slave based on the value of the second flag F2 (step S5). Specifically, in step S5, the first control unit 51 determines whether or not the value of the second flag F2 is 1. If the first control unit 51 determines that the own device has not been determined as a slave, that is, if the value of the second flag F2 is 0 (step S5: NO), it proceeds to step S6, which will be described later.
[0032] On the other hand, if the first control unit 51 determines that the device itself has been determined as the slave, that is, if the value of the second flag F2 is 1 (step S5: YES), the process proceeds to step S18 shown in Fig. 5. Below, the process of step S6 shown in Fig. 4 will first be described.
[0033] When the first control unit 51 proceeds to step S6, it determines whether or not the device itself has been determined as the master based on the value of the third flag F3 (step S6). Specifically, in step S6, the first control unit 51 determines whether or not the value of the third flag F3 is 1. If the first control unit 51 determines that the device itself has not been determined as the master, that is, if the value of the third flag F3 is 0 (step S6: NO), it proceeds to step S7, which will be described later.
[0034] On the other hand, if the first control unit 51 determines that the device itself has been determined as the master, that is, if the value of the third flag F3 is 1 (step S6: YES), the process proceeds to step S15 shown in Fig. 5. Below, the process of step S7 shown in Fig. 4 will first be described.
[0035] When the first control unit 51 proceeds to step S7, it starts measuring time (step S7).
[0036] After starting time measurement, the first control unit 51 determines whether or not it has received access from another device that shares the communication bus 30 (step S8). Here, "other devices" refers to all devices other than the first control unit 51 that share the same communication bus 30. For example, for the first fan unit 11A, the "other devices" are the upper level control unit 20, the second fan unit 12A, the first fan unit 11B, the second fan unit 12B, the first fan unit 11C, and the second fan unit 12C.
[0037] For example, in step S8, the first control unit 51 determines that it has received access from another device that shares the communication bus 30 when it receives a general call address via the communication bus 30 or when it receives an address scan via the communication bus 30.
[0038] If the first control unit 51 determines that it has not received access from another device sharing the communication bus 30 (step S8: NO), it determines whether the time has reached the hearing time (step S9). The hearing time is a preset fixed value. It is desirable that the hearing time be set to a time longer than one cycle (control period) of communication in the air blowing system 1. The control period is lengthened in proportion to the number of slaves present in the air blowing system 1. For example, if the control period of the three dual fan units 10 is 0.8 seconds, the hearing time is set to 1 second. The hearing time is an example of a predetermined second standby time. If the first control unit 51 determines that the time has not reached the hearing time (step S9: NO), it returns to the processing of step S8.
[0039] On the other hand, if the first control unit 51 determines that the time has reached the hearing time (step S9: YES), it resets the measured time value to 0 and then starts measuring the time again (step S10). In this way, if the time has reached the hearing time without being accessed by another device that shares the communication bus 30, the first control unit 51 proceeds to step S10 and starts measuring the time again.
[0040] After starting the time measurement, the first control unit 51 determines whether or not it has been accessed by another device that shares the communication bus 30 (step S11). For example, similar to step S8, in step S11, the first control unit 51 determines that it has been accessed by another device that shares the communication bus 30 when it receives a general call address via the communication bus 30 or when it receives an address scan via the communication bus 30.
[0041] If the first control unit 51 determines that it is not being accessed by another device sharing the communication bus 30 (step S11: NO), it determines whether the time has reached the random wait time (step S12). If the first control unit 51 determines that the time has not reached the random wait time (step S12: NO), it returns to the processing of step S11.
[0042] On the other hand, if the first control unit 51 determines that the time has reached the random wait time (step S12: YES), it determines its own device as the master (step S13). Specifically, in step S13, the first control unit 51 sets the value of the third flag F3 to 1. In this way, the first control unit 51 determines its own device as the master when the time has reached the random wait time without receiving access from another device sharing the communication bus 30. After determining its own device as the master, the first control unit 51 discards the address generated in step S4 and determines address 9 as the address of its own device. Note that if the address generated in step S4 is address 9, the first control unit 51 determines address 9 generated in step S4 as the address of its own device. After determining its own device as the master, the first control unit 51 proceeds to step S15 shown in FIG. 5.
[0043] Furthermore, in step S8, if the first control unit 51 determines that it has received access from another device that shares the communication bus 30 during the time measurement started in step S7 (step S8: YES), it determines its own device as the slave (step S14). Specifically, in step S14, the first control unit 51 sets the value of the second flag F2 to 1. In this way, if the first control unit 51 receives access from another device before the time reaches the hearing time, it determines its own device as the slave. After determining its own device as the slave, the first control unit 51 proceeds to step S18 shown in FIG. 5.
[0044] Furthermore, in step S11, if the first control unit 51 determines that it has received access from another device sharing the communication bus 30 during the time measurement started in step S10 (step S11: YES), it determines its own device as the slave (step S14). Specifically, in step S14, the first control unit 51 sets the value of the second flag F2 to 1. In this way, the first control unit 51 determines its own device as the slave if it receives access from another device before the time reaches the random wait time. Once the first control unit 51 determines its own device as the slave, it determines the address generated in step S4 as the slave address of its own device. After determining its own device as the slave, the first control unit 51 proceeds to step S18 shown in FIG. 5.
[0045] As shown in Fig. 5, when it is determined that the first control unit 51 is the master, the first control unit 51 proceeds to step S15 shown in Fig. 5 and executes the processes of steps S15, S16, and S17 as processes specific to the master. On the other hand, when it is determined that the first control unit 51 is the slave, the first control unit 51 proceeds to step S18 shown in Fig. 5 and executes the process of step S18 as processes specific to the slave. First, the processes of steps S15, S16, and S17, which are processes specific to the master, will be described below.
[0046] When the first control unit 51 proceeds to step S15, it transmits a general call address via the data line 32 (step S15). In I2C communication, when transmitting data from a master to a slave, the master transmits a specific slave address via the data line 32 to designate one slave from among multiple slaves as a destination slave, and then transmits the data via the data line 32. Of the multiple slaves, the slave designated as the destination slave receives the data via the data line 32. In such I2C communication, the master can simultaneously designate all slaves as destination slaves by transmitting a reserved address of number 0 called a general call address.
[0047] That is, in step S15, the first control unit 51 simultaneously designates all slaves as destination slaves by transmitting the reserved address of No. 0 as the general call address. Also, in step S15, after transmitting the general call address, the first control unit 51 transmits the address book as data via the data line 32. The address book will be described later.
[0048] Next, the first control unit 51 performs an I2C address scan (step S16). Specifically, in step S16, the first control unit 51 transmits slave address candidates No. 9 to No. 119 in order and determines whether an acknowledgement (ACK) has been received in response to the transmission of the slave address candidates, thereby acquiring the slave addresses of the slaves present in the air blowing system 1. By performing such an I2C address scan, the first control unit 51 creates an address book showing the slave addresses of the slaves present in the air blowing system 1.
[0049] A specific example of how to create an address book is as follows: First, the first control unit 51 transmits the ninth slave address candidate. If the first control unit 51 receives an acknowledgement in response to the transmission of the ninth slave address candidate, it increments the slave counter and stores the ninth slave address in an array (address book) that has the value of the slave counter as the element number. On the other hand, if the first control unit 51 does not receive an acknowledgement in response to the transmission of the ninth slave address candidate, it does nothing and proceeds to the next process.
[0050] Next, the first control unit 51 transmits the slave address candidate No. 10. If the first control unit 51 receives an acknowledgement in response to the transmission of the slave address candidate No. 10, it increments the slave counter and stores the slave address No. 10 in the address book. On the other hand, if the first control unit 51 does not receive an acknowledgement in response to the transmission of the slave address candidate No. 10, it proceeds to the next process without doing anything.
[0051] The first control unit 51 performs the above process on each of the slave address candidates from No. 11 to No. 119, thereby completing an address book that shows the slave addresses of the slaves present in the air blowing system 1. For example, when the first control unit 51 receives an acknowledgement for the transmission of the slave address candidate No. 35 and the transmission of the slave address candidate No. 90, it acquires an address book that includes the slave address No. 35 linked to the element number No. 1 and the slave address No. 90 linked to the element number No. 2.
[0052] As described above, the first control unit 51 performs an address scan on all slave address candidates and associates the slave address candidates that respond with element numbers to generate a slave address book. The element numbers, i.e., the values of the slave counters, may be used as slave identifiers. For example, a unique number of the dual fan unit 10, such as a serial number, may also be used as the slave identifier.
[0053] Next, the first control unit 51 executes at least one of communication with the upper control device 20, communication with the slave, and mutual aid processing as necessary (step S17). For example, the first control unit 51 receives a rotation speed command value from the upper control device 20. The first control unit 51 transmits the rotation speed command value to the first fan device 11 and the second fan device 12, which are slaves. For example, as mutual aid processing, the first control unit 51 transmits the rotation speed command value determined by itself to the first fan device 11 and the second fan device 12, which are slaves. Also, in step S17, the first control unit 51 resets the I2C timeout if I2C communication is established. After executing the processing of step S17 as described above, the first control unit 51 proceeds to step S19, which will be described later.
[0054] On the other hand, when the first control unit 51 proceeds to step S18, it executes the following processing as a slave-specific processing (step S18). Specifically, in step S18, the first control unit 51 executes at least one of the following as necessary: receiving an address book via a general call, sending an acknowledgement in response to an I2C address scan, and sending data in response to a request from the master. Also, in step S18, the first control unit 51 resets the I2C timeout if I2C communication is established. After executing the processing of step S18 as described above, the first control unit 51 proceeds to step S19, which will be described later.
[0055] When the first control unit 51 proceeds to step S19, it executes processing other than the above-described communication (step S19). Thereafter, the first control unit 51 determines whether an I2C timeout has occurred (step S20). If the first control unit 51 determines that an I2C timeout has not occurred (step S20: NO), it returns to step S2 shown in FIG. 3. On the other hand, if the first control unit 51 determines that an I2C timeout has occurred (step S20: YES), it returns to step S1 shown in FIG. 3.
[0056] The above is a description of the processing executed by the first control unit 51 of the first fan unit 11 included in each dual fan unit 10. Below, we will explain the processing executed in accordance with the second software by the second control unit 61 of the second fan unit 12 included in each dual fan unit 10. Note that the processing executed by the second control unit 61 includes many processes in common with the processing executed by the first control unit 51, so below, only the differences between the two processes will be explained.
[0057] 3, the second control unit 61 generates an address of its own device and a random wait time based on the random number acquired in step S3. In step S4, the second control unit 61 generates an address that satisfies the second condition from among the randomly determined addresses numbered 9 to 119 as the address of its own device. For example, an address that satisfies the second condition is an even-numbered address. In other words, the second control unit 61 generates an even-numbered address from among the randomly determined addresses numbered 9 to 119 as the address of its own device.
[0058] Furthermore, in step S13 shown in FIG. 4, when the second control unit 61 determines its own device as the master, it discards the address generated in step S4 and determines address No. 8 as the address of its own device.
[0059] In this way, the first control unit 51 of the first fan unit 11 generates an odd-numbered address from among the randomly determined addresses numbered 9 to 119 as its own device's address, while the second control unit 61 of the second fan unit 12 generates an even-numbered address from among the randomly determined addresses numbered 9 to 119 as its own device's address. Furthermore, when the first control unit 51 determines its own device to be the master, it determines address number 9 as its own device's address, while the second control unit 61 determines address number 8 as its own device's address when it determines its own device to be the master. These are the differences between the processing performed by the second control unit 61 and the processing performed by the first control unit 51. The processing performed by the second control unit 61 is the same as the processing performed by the first control unit 51, except for steps S4 and S13.
[0060] Below, we will use specific examples to explain in detail how the first fan device 11 and the second fan device 12 included in each dual fan device 10 operate as a result of the first control unit 51 of the first fan device 11 and the second control unit 61 of the second fan device 12 performing the above-mentioned processing.
[0061] When the power to the ventilation system 1 is turned on with each dual fan unit 10 connected to the communication bus 30, power supply voltage is supplied to the first fan unit 11 and the second fan unit 12 included in each dual fan unit 10 via the power line 40.
[0062] When power supply voltage is supplied to the first fan unit 11 and the second fan unit 12 included in each dual fan unit 10, the first control unit 51 of the first fan units 11A, 11B, and 11C and the second control unit 61 of the second fan units 12A, 12B, and 12C execute initialization processing, including resetting all flags, and start counting down the I2C timeout. The first control unit 51 of the first fan units 11A, 11B, and 11C and the second control unit 61 of the second fan units 12A, 12B, and 12C then acquire random numbers and generate their own device addresses and random wait times based on the acquired random numbers. Here, the first control unit 51 of the first fan units 11A, 11B, and 11C generates odd-numbered addresses, while the second control unit 61 of the second fan units 12A, 12B, and 12C generates even-numbered addresses.
[0063] Next, the first control unit 51 of the first fan units 11A, 11B, and 11C and the second control unit 61 of the second fan units 12A, 12B, and 12C start measuring time to measure the hearing time, but at this point, the master and slave roles among the first fan units 11A, 11B, and 11C and the second fan units 12A, 12B, and 12C have not been determined, so the measured time value reaches the hearing time without any access from the other units among the first fan units 11A, 11B, and 11C and the second fan units 12A, 12B, and 12C. In the following description, the measured time value may be referred to as the "measured time."
[0064] After the measured time reaches the hearing time, the first control unit 51 of the first fan unit 11A, 11B, and 11C and the second control unit 61 of the second fan unit 12A, 12B, and 12C start measuring time to measure the random wait time. Here, for example, assume that the random number acquired by the first fan unit 11A is the smallest. In this case, the random wait time generated by the first fan unit 11A is the shortest. Therefore, because the measured time of the first fan unit 11A reaches the random wait time first, the first control unit 51 of the first fan unit 11A determines itself as the master earlier than the other units and determines address 9 as its own address.
[0065] The first control unit 51 of the first fan unit 11A transmits a general call address immediately after determining that it is the master. As a result, the first control units 51 of the first fan units 11B and 11C and the second control units 61 of the second fan units 12A, 12B, and 12C receive the general call address before the measured time reaches the random wait time they themselves generated. Because the first control units 51 of the first fan units 11B and 11C and the second control units 61 of the second fan units 12A, 12B, and 12C received the general call address before the measured time reached the random wait time they themselves generated, they determine that they are slaves. The first control units 51 of the first fan units 11B and 11C determine the odd-numbered addresses other than number 9 from among the addresses numbered 9 through 119 as their slave addresses, while the second control units 61 of the second fan units 12A, 12B, and 12C determine the even-numbered addresses from among the addresses numbered 9 through 119 as their slave addresses. As a result of the above, the first fan device 11A, which has the smallest acquired random number, becomes the master, and the first fan devices 11B and 11C and the second fan devices 12A, 12B, and 12C become slaves.
[0066] The first control unit 51 of the first fan device 11A, which has become the master, periodically performs processes such as sending the general call address, sending the address book, performing address scanning, and generating the address book, unless an I2C timeout occurs. Meanwhile, the first control units 51 of the first fan devices 11B and 11C, which have become slaves, and the second control units 61 of the second fan devices 12A, 12B, and 12C, which have become slaves, periodically perform processes such as receiving the general call address, receiving the address book, and sending acknowledgements in response to address scanning, unless an I2C timeout occurs.
[0067] The first control unit 51 of the first fan device 11A, which has become the master, refers to the created address book and transmits various commands to the first fan devices 11B and 11C and the second fan devices 12A, 12B, and 12C, which have become slaves. For example, the first control unit 51 of the first fan device 11A identifies the odd-numbered addresses included in the address book as the addresses of the first fan device 11 located on the inlet side, and the even-numbered addresses included in the address book as the addresses of the second fan device 12 located on the outlet side. The first control unit 51 of the first fan device 11A then transmits a first rotation speed command value by specifying an odd-numbered address other than number 9 included in the address book. As a result, the first control units 51 of the first fan devices 11B and 11C receive the first rotation speed command value and rotate the first motors 53 at a rotation speed corresponding to the first rotation speed command value. The first control unit 51 of the first fan device 11A also transmits a second rotation speed command value by specifying an even-numbered address included in the address book. As a result, the second control unit 61 of the second fan units 12A, 12B, and 12C receives the second rotation speed command value and rotates the second motor 63 at a rotation speed corresponding to the second rotation speed command value. The first rotation speed command value and the second rotation speed command value may be the same value or different values.
[0068] The above explanation is based on the assumption that the random number acquired by the first fan device 11A is the smallest, but it is also possible that the random number acquired by any of the three second fan devices 12 is the smallest. For example, assume that the random number acquired by the second fan device 12A is the smallest. In this case, the random wait time generated by the second fan device 12A is the shortest. Therefore, because the measured time of the second fan device 12A reaches the random wait time first, the second control unit 61 of the second fan device 12A determines itself as the master earlier than the other devices and determines address 8 as its own address.
[0069] The second control unit 61 of the second fan unit 12A transmits a general call address immediately after determining that the unit is the master. As a result, the first control units 51 of the first fan units 11A, 11B, and 11C and the second control units 61 of the second fan units 12B and 12C receive the general call address before the measured time reaches the random wait time they generated. Because the first control units 51 of the first fan units 11A, 11B, and 11C and the second control units 61 of the second fan units 12B and 12C received the general call address before the measured time reached the random wait time they generated, they determine that the unit is the slave. The first control units 51 of the first fan units 11A, 11B, and 11C determine the odd-numbered addresses from addresses 9 to 119 as their slave addresses, and the second control units 61 of the second fan units 12B and 12C determine the even-numbered addresses from addresses 9 to 119 as their slave addresses. As a result of the above, the second fan device 12A, which has the smallest acquired random number, becomes the master, and the first fan devices 11A, 11B, and 11C and the second fan devices 12B and 12C become slaves.
[0070] The second control unit 61 of the second fan unit 12A, which has become the master, periodically performs processes such as sending the general call address, sending the address book, performing address scanning, and generating the address book, unless an I2C timeout occurs. Meanwhile, the first control units 51 of the first fan units 11A, 11B, and 11C, which have become slaves, and the second control units 61 of the second fan units 12B and 12C, which have become slaves, periodically perform processes such as receiving the general call address, receiving the address book, and sending acknowledgements in response to address scanning, unless an I2C timeout occurs.
[0071] The second control unit 61 of the second fan device 12A, which has become the master, refers to the created address book and transmits various commands to the first fan devices 11A, 11B, and 11C and the second fan devices 12B and 12C, which have become slaves. For example, the second control unit 61 of the second fan device 12A identifies the odd-numbered addresses included in the address book as the addresses of the first fan device 11 located on the inlet side and the even-numbered addresses included in the address book as the addresses of the second fan device 12 located on the outlet side. The second control unit 61 of the second fan device 12A then transmits a first rotation speed command value by specifying the odd-numbered addresses included in the address book. As a result, the first control units 51 of the first fan devices 11A, 11B, and 11C receive the first rotation speed command value and rotate the first motors 53 at the rotation speed corresponding to the first rotation speed command value. The second control unit 61 of the second fan device 12A then transmits a second rotation speed command value by specifying the even-numbered addresses other than number 8 included in the address book. As a result, the second control units 61 of the second fan units 12B and 12C receive the second rotation speed command value and rotate the second motors 63 at the rotation speed corresponding to the second rotation speed command value.
[0072] As described above, according to this embodiment, a ventilation system 1 is provided that facilitates individual identification of the first fan unit 11 and the second fan unit 12 included in each of multiple dual fan units 10 that share the same communication bus 30, without increasing the number of wires on the existing communication bus 30.
[0073] For example, the random number acquired by the first fan device 11A and the random number acquired by the first fan device 11B may be equal to and be the smallest. In this case, the measured time of the first fan device 11A and the measured time of the first fan device 11B reach the random wait time earliest and at the same time, so the first control units 51 of the first fan devices 11A and 11B simultaneously determine their own devices as the master. Immediately after determining their own devices as the master, the first control units 51 of the first fan devices 11A and 11B simultaneously transmit the general call addresses.
[0074] In this way, when multiple masters simultaneously transmit general call addresses, an I2C timeout occurs due to a communication error. Therefore, in this case, the first fan unit 11 and the second fan unit 12 included in each dual fan unit 10 restart by executing initialization processing, including resetting all flags, and again acquire random numbers and generate their own device addresses and random wait times. In this way, when multiple masters simultaneously transmit general call addresses, the master selection process is repeated until one of the first fan unit 11 and the second fan unit 12 included in all dual fan units 10 becomes the master.
[0075] The first fan device 11 or the second fan device 12 that has determined itself as the master may execute the first identification process shown in the flowchart of Fig. 6. As shown in Fig. 6, the first fan device 11 or the second fan device 12 that has determined itself as the master refers to the created address book and instructs the first fan device 11 and the second fan device 12 that have determined itself as the slave to present their unique identification information (step S31).
[0076] In the following description, the first fan device 11 or the second fan device 12 that has been determined to be the master may be referred to simply as the master. Also, in the following description, the first fan device 11 or the second fan device 12 that has been determined to be the slave may be referred to simply as the slave.
[0077] For example, the unique identification information is the serial number of the dual fan unit 10. The unique identification information of the dual fan unit 10A is pre-stored in the first storage unit 52 of the first fan unit 11A and the second storage unit 62 of the second fan unit 12A. The unique identification information of the dual fan unit 10B is pre-stored in the first storage unit 52 of the first fan unit 11B and the second storage unit 62 of the second fan unit 12B. The unique identification information of the dual fan unit 10C is pre-stored in the first storage unit 52 of the first fan unit 11C and the second storage unit 62 of the second fan unit 12C. The slave transmits the unique identification information in response to an instruction from the master.
[0078] Based on the unique identification information received from the slave, the master identifies the first fan unit 11 and the second fan unit 12 having the same unique identification information as the first fan unit 11 and the second fan unit 12 included in the same dual fan unit 10 (step S32).
[0079] By the master performing the above-mentioned first identification process, it is possible to identify the first fan unit 11 and the second fan unit 12 that are included in the same dual fan unit 10 among the first fan unit 11 and the second fan unit 12 that exist as slaves in the ventilation system 1.
[0080] Instead of the first identification process described above, the master may execute a second identification process shown in the flowchart of Fig. 7. As shown in Fig. 7, the master refers to the created address book and transmits an operation command to one of the first fan units 11 included in each dual fan unit 10 (step S41). Specifically, the master transmits a predetermined rotation speed command value to one first fan unit 11.
[0081] The first fan unit 11 that has received the operation instruction begins operation in response to the operation instruction from the master. Specifically, the first fan unit 11 that has received the operation instruction rotates at a rotation speed corresponding to the rotation speed command value received from the master. While operating the first fan unit 11, the master identifies the second fan units 12 that are included in the same dual fan unit 10 as the first fan unit 11 based on the states of all the second fan units 12 (step S42).
[0082] For example, the master may acquire vibration data indicating the vibration of the second fan devices 12 as data indicating the state of the second fan devices 12. In this case, a vibration sensor may be provided in advance in all second fan devices 12, and the vibration data obtained from each vibration sensor may be transmitted to the master. When vibration is generated by the rotation of one first fan device 11, the second fan device 12 included in the same dual fan device 10 as that first fan device 11 also vibrates. Based on the vibration data acquired from all second fan devices 12, the master identifies the second fan device 12 with the greatest vibration intensity as the second fan device 12 included in the same dual fan device 10 as that one first fan device 11.
[0083] Furthermore, for example, the master may acquire current data indicating the current flowing through the second motor 63 of the second fan device 12 as data indicating the state of the second fan device 12. When one first fan device 11 rotates to generate wind, the second fan device 12 included in the same dual fan device 10 as the first fan device 11 also rotates, causing current to flow through the second motor 63. Based on the current data acquired from all second fan devices 12, the master identifies the second fan device 12 with the largest current value as the second fan device 12 included in the same dual fan device 10 as the one first fan device 11.
[0084] Furthermore, for example, the master may acquire sound data indicating the sound generated from the second fan devices 12 as data indicating the state of the second fan devices 12. In this case, a microphone may be provided in advance in each of the second fan devices 12, and sound data obtained from each microphone may be transmitted to the master. When one first fan device 11 rotates, sound is generated from the second fan device 12 included in the same dual fan device 10 as the first fan device 11. Based on the sound data acquired from all the second fan devices 12, the master identifies the second fan device 12 with the strongest sound as the second fan device 12 included in the same dual fan device 10 as the one first fan device 11.
[0085] Furthermore, for example, the master may acquire a Hall signal output from a Hall element provided in the second motor 63 of the second fan device 12 as data indicating the state of the second fan device 12. When wind is generated by the rotation of one first fan device 11, the second fan device 12 included in the same dual fan device 10 as the first fan device 11 also rotates, and a Hall signal is output from the Hall element provided in the second motor 63. Based on the Hall signals acquired from all the second fan devices 12, the master identifies the second fan device 12 with the strongest Hall signal as the second fan device 12 included in the same dual fan device 10 as the one first fan device 11.
[0086] By performing the above-described second identification process on all first fan units 11, the master can identify the first fan units 11 and second fan units 12 included in the same dual fan unit 10 among the first fan units 11 and second fan units 12 that exist as slaves in the air blower system 1. If each dual fan unit 10 does not have unique identification information, the second identification process can be used instead of the first identification process. Note that the master may operate one second fan unit 12 and identify the first fan units 11 included in the same dual fan unit 10 as that one second fan unit 12 based on the states of all first fan units 11.
[0087] Next, an operation will be described in which the host controller 20 serves as the master and the first fan unit 11 and the second fan unit 12 included in all of the dual fan units 10 serve as slaves. Fig. 8 is a flowchart showing the processing executed by the master host controller 20. As shown in Fig. 8, when the power to the air blowing system 1 is turned on, the host controller 20 immediately transmits a general call address (step S51).
[0088] As a result, the first fan unit 11 and the second fan unit 12 included in each dual fan unit 10 receive the general call address before the measured time reaches the hearing time or the random wait time, and therefore determine themselves as slaves. In this way, by the upper level control device 20 being the first to access all of the first fan unit 11 and the second fan unit 12, the upper level control device 20 becomes the master, and all of the first fan unit 11 and the second fan unit 12 become slaves.
[0089] When the first fan unit 11 and the second fan unit 12 included in each dual fan unit 10 determine themselves as slaves, they determine the addresses generated in step S4 as their slave addresses. That is, of the addresses numbered 9 through 119 randomly determined for each of the first fan units 11A, 11B, and 11C, odd-numbered addresses are determined as the slave addresses for each of the first fan units 11A, 11B, and 11C. Also, of the addresses numbered 9 through 119 randomly determined for each of the second fan units 12A, 12B, and 12C, even-numbered addresses are determined as the slave addresses for each of the second fan units 12A, 12B, and 12C.
[0090] Next, the host controller 20 performs an I2C address scan (step S52). Specifically, in step S52, the host controller 20 transmits slave address candidates No. 9 through No. 119 in order and determines whether an acknowledgement has been received in response to the transmission of the slave address candidates, thereby acquiring the slave addresses of the slaves present in the air blowing system 1. By performing this I2C address scan, the host controller 20 creates an address book showing the slave addresses of the slaves present in the air blowing system 1. The method for creating the address book is the same as when either the first fan device 11 or the second fan device 12 is the master, and therefore a description thereof will be omitted.
[0091] Next, the host controller 20 refers to the created address book and transmits various instructions to the first fan unit 11 and the second fan unit 12 included in each dual fan unit 10 (step S53). For example, in step S53, the host controller 20 identifies the odd-numbered addresses included in the address book as the addresses of the first fan unit 11 located on the inlet side and the even-numbered addresses included in the address book as the addresses of the second fan unit 12 located on the outlet side. The host controller 20 then transmits a first rotation speed command value by specifying the odd-numbered addresses included in the address book. As a result, the first control units 51 of the first fan units 11A, 11B, and 11C receive the first rotation speed command value and rotate the first motors 53 at a rotation speed corresponding to the first rotation speed command value. The host controller 20 also transmits a second rotation speed command value by specifying the even-numbered addresses included in the address book. As a result, the second control units 61 of the second fan units 12A, 12B, and 12C receive the second rotation speed command value and rotate the second motors 63 at the rotation speed corresponding to the second rotation speed command value.
[0092] As described above, even when the upper control device 20 is the master, a ventilation system 1 is provided that makes it easy to individually identify the first fan device 11 and the second fan device 12 included in each of multiple dual fan devices 10 that share the same communication bus 30, without increasing the number of wires on the existing communication bus 30.
[0093] Similar to the first fan device 11 or the second fan device 12 that has determined itself as the master, the host control device 20 that serves as the master may perform a first identification process to identify the first fan device 11 and the second fan device 12 that have the same unique identification information as the first fan device 11 and the second fan device 12 that are included in the same dual fan device 10. Furthermore, the host control device 20 that serves as the master may perform a second identification process to identify the second fan device 12 that is included in the same dual fan device 10 as the one first fan device 11, based on the states of all the second fan devices 12, while operating one first fan device 11. The first identification process and the second identification process performed by the host control device 20 are similar to the first identification process and the second identification process performed by the first fan device 11 or the second fan device 12 that has determined itself as the master, and therefore description thereof will be omitted.
[0094] The present invention is not limited to the above-described embodiment, and the configurations described herein can be combined as appropriate within the scope of their mutual compatibility. For example, the above-described embodiment illustrates the air blowing system 1 including the dual-fan unit 10, which includes two single-fan units, as a multi-fan unit. However, the present invention is not limited to this. For example, the air blowing system of the present invention may include multiple multi-fan units, each including three or more single-fan units.
[0095] In this case, each of the multiple multi-fan units includes at least a first fan unit, a second fan unit, and a third fan unit. The first fan unit generates an address that satisfies a first condition as its own address. The second fan unit generates an address that satisfies a second condition as its own address. The third fan unit generates an address that satisfies a third condition as its own address. For example, an address that satisfies the first condition is a multiple of 2. An address that satisfies the second condition is a multiple of 3. An address that satisfies the third condition is a multiple of 4.
[0096] The present technology may be configured as follows: (1) A blowing system including a plurality of fan devices sharing a communication bus, each of the plurality of fan devices including a first fan device having first software and a second fan device having second software, wherein the first fan device and the second fan device each execute a first process of acquiring a random number, a second process of generating an address of the first fan device and a first standby time based on the random number, a third process of starting time measurement, a fourth process of determining the first fan device as a master when the first standby time has elapsed without being accessed by another device sharing the communication bus, a fifth process of accessing the other device via the communication bus immediately after determining the first fan device as the master, and a sixth process of determining the first fan device as a slave when the first fan device has been accessed by the other device via the communication bus before the first standby time has elapsed, wherein the first fan device generates an address that satisfies a first condition as the address of the first fan device in the second process, and the second fan device generates an address that satisfies a second condition as the address of the first fan device in the second process. (2) The air blowing system according to (1), wherein the first fan device or the second fan device that has determined itself as the master identifies the first fan device and the second fan device having the same unique identification information as the first fan device and the second fan device that are included in the same fan device. (3) The air blowing system according to (1), further comprising a host control device that shares the communication bus with the plurality of fan devices, wherein the host control device becomes the master by accessing all of the first fan device and the second fan device first, and all of the first fan device and the second fan device become slaves, and the host control device identifies the first fan device and the second fan device having the same unique identification information as the first fan device and the second fan device that are included in the same fan device.(4) The air blowing system according to (1), wherein the first fan device or the second fan device that has determined itself as the master identifies a second fan device included in the same fan device as the one first fan device based on the states of all of the second fan devices while operating the one first fan device. (5) The air blowing system according to (1), further comprising a host control device that shares the communication bus with the plurality of fan devices, wherein the host control device becomes the master by accessing all of the first fan device and the second fan devices first, and all of the first fan device and the second fan devices become slaves, and the host control device operates one first fan device while identifying a second fan device included in the same fan device as the one first fan device based on the states of all of the second fan devices. (6) The air blowing system according to any one of (1) to (5), wherein the address that satisfies the first condition is an odd-numbered address, and the address that satisfies the second condition is an even-numbered address. (7) The air blowing system according to any one of (1) to (6), wherein in the first process, the first fan device and the second fan device acquire the random number within a range of 0 to 255 by acquiring data of the lowest 8 bits of a timer or an AD converter having an arbitrary bit length of 8 or more at random timing. (8) The air blowing system according to (7), wherein in the second process, the first fan device and the second fan device generate the address of their own device by adding an offset value to the remainder obtained by dividing the random number by a divisor of 127 or less, and generate the first standby time by multiplying the random number by a proportional constant.
[0097] According to an aspect of the present invention, there is provided a ventilation system that facilitates individual identification of multiple single fan units included in multiple multi-fan units that share the same communication bus. Thus, the present invention has industrial applicability.
[0098] REFERENCE SIGNS LIST 1 Air blowing system 10, 10A, 10B, 10C Dual fan device 11, 11A, 11B, 11C First fan device 12, 12A, 12B, 12C Second fan device 20 Upper control device 30 Communication bus 31 Clock signal line 32 Data line 40 Power line 41 Power supply line 42 Ground line 51 First control unit 52 First memory unit 53 First motor 54 First impeller 61 Second control unit 62 Second memory unit 63 Second motor 64 Second impeller
Claims
1. A ventilation system comprising a plurality of fan devices sharing a communication bus, wherein the plurality of fan devices each include a first fan device having first software and a second fan device having second software, wherein the first fan device and the second fan device each execute the following: a first process of acquiring a random number; a second process of generating an address of the first fan device and a first standby time based on the random number; a third process of starting time measurement; a fourth process of determining the first fan device as a master when the first standby time is reached without being accessed by another device sharing the communication bus; a fifth process of accessing the other device via the communication bus immediately after determining the first fan device as the master; and a sixth process of determining the first fan device as a slave when the first fan device is accessed by the other device via the communication bus before the first standby time is reached, wherein the first fan device generates an address that satisfies a first condition as the address of the first fan device in the second process, and the second fan device generates an address that satisfies a second condition as the address of the first fan device in the second process.
2. The air blowing system described in claim 1, wherein the first fan device or the second fan device that has determined itself as the master identifies the first fan device and the second fan device having the same unique identification information as the first fan device and the second fan device included in the same fan device.
3. The air blowing system of claim 1, further comprising a host control device that shares the communication bus with the plurality of fan devices, wherein the host control device becomes the master by accessing all of the first fan device and the second fan device first, and all of the first fan device and the second fan device become slaves, and the host control device identifies the first fan device and the second fan device having the same unique identification information as the first fan device and the second fan device included in the same fan device.
4. The air blowing system described in claim 1, wherein the first fan device or the second fan device that has determined itself as the master operates one first fan device while identifying second fan devices included in the same fan device as the one first fan device based on the states of all second fan devices.
5. The air blowing system of claim 1, further comprising a host control device that shares the communication bus with the plurality of fan devices, wherein the host control device becomes the master by accessing all of the first fan device and the second fan devices first, and all of the first fan device and the second fan devices become slaves, and the host control device, while operating one first fan device, identifies second fan devices included in the same fan device as the one first fan device based on the states of all second fan devices.
6. The ventilation system according to claim 1, wherein the address that satisfies the first condition is an odd-numbered address, and the address that satisfies the second condition is an even-numbered address.
7. A ventilation system as described in any one of claims 1 to 6, wherein in the first process, the first fan device and the second fan device acquire the random number within the range of 0 to 255 by acquiring the lower 8 bits of data from a timer or AD converter of any bit length of 8 or more at random timing.
8. The air blowing system described in claim 7, wherein in the second process, the first fan device and the second fan device generate the address of their own device by adding an offset value to the remainder obtained by dividing the random number by a divisor of 127 or less, and generate the first standby time by multiplying the random number by a proportional constant.
Citation Information
Patent Citations
Bus system for electronic musical instrument
JP2002251183A
Water section equipment
JP2019146034A