TECHNICAL FIELD
[0001] The present application claims priority to Korean Patent Application No.
10-2017-0133577 filed on October 13, 2017 in the Republic of Korea, the disclosures of which are incorporated herein by reference.
[0002] The present disclosure relates to a data input scheduling apparatus, and more particularly,
to a data input scheduling apparatus for scheduling data input of a data input device
that receives data through a plurality of channels.
BACKGROUND ART
[0003] Secondary batteries, which are easy to apply to various product groups and have good
electrical energy characteristics such as high energy density, are widely used for
electric vehicles (EVs) or hybrid vehicles (HVs), driven by electric driving sources,
as well as portable devices.
[0004] The secondary batteries are capable of repeatedly charging and discharging by electrochemical
reactions, which may reduce the use of fossil fuels drastically, and also generate
no by-products due to the use of energy. For this reason, the secondary batteries
are attracting attention as a new environment-friendly energy source for improving
energy efficiency.
[0005] Generally, an assembly includes a plurality of unit assembly secondary cells, and
a battery pack applied to a vehicle or the like includes a plurality of the assemblies
or battery modules. The cell includes a positive electrode current collector, a separator,
an active material, an electrolyte, an aluminum thin film layer and the like and allows
charging and discharging by an electrochemical reaction among the components.
[0006] The battery pack further includes a battery management system (BMS) for monitoring
and controlling a state of a secondary battery by applying an algorithm for controlling
a power supplied to a driving load such as a motor, measuring electric characteristic
values such as current and voltage, controlling charge/discharge, controlling equalization
and estimating a state of charge (SOC).
[0007] More specifically, a data input device included in the BMS receives measurement data
such as the voltage, current and temperature of the battery pack, and monitors and
controls a state of the secondary battery through an algorithm for charge/discharge
control, voltage equalization control, estimation of SOC or the like as described
above.
[0008] For this, the data input device has a plurality of channels and receives various
measurement data through each channel. For example, the voltage of the battery pack,
the voltage of the fuse, and the voltage of the insulation resistor and the like are
input through each channel.
[0009] At this time, in order to receive measurement data through one of the plurality of
channels included in the data input device, data input time of the measurement data
and channel change time required to change to the next channel are required.
[0010] That is, the time obtained by adding the data input time and the channel change time
is required for the input of the measurement data for each channel, and the time proportional
to the number of channels is taken to receive the measurement data through all of
the plurality of channels of the data input device.
[0011] In addition, an input cycle for receiving measurement data is set to each channel.
Also, if a channel receives measurement data that is demanded in real time, the input
cycle is set to be short, and if a channel receives measurement data that is demanded
in a relatively long cycle, the input cycle is set to be long.
[0012] At this time, if the number of channels included in the data input device is large,
when measurement data is sequentially input to the plurality of channels, the minimum
time for inputting the measurement data one time to all channels exceeds the input
cycle of the channel whose input cycle is set to be short, thereby causing an error
in the measurement data input.
DISCLOSURE
Technical Problem
[0013] The present disclosure is directed to providing a data input scheduling apparatus,
which is capable of receiving data within an input cycle without exceeding the input
cycle of a channel by controlling a data input device to receive data to a channel
among a plurality of channels, which corresponds to the result of an identification
code checking work for checking an input cycle identification code and an input identification
code.
[0014] These and other objects and advantages of the present disclosure may be understood
from the following detailed description and will become more fully apparent from the
exemplary embodiments of the present disclosure. Also, it will be easily understood
that the objects and advantages of the present disclosure may be realized by the means
shown in the appended claims and combinations thereof.
Technical Solution
[0015] In one aspect of the present disclosure, there is provided a data input scheduling
apparatus of a data input device that receives data through a plurality of channels,
the data input scheduling apparatus comprising: an allocation unit configured to allocate
any one of a short cycle code, a long cycle code and an event code as an input cycle
identification code and allocate any one of an input code and a non-input code as
an input identification code to each of the plurality of channels; and a control unit
configured to perform an identification code checking work for checking the input
cycle identification code and the input identification code and to control the data
input device to receive the data through a channel corresponding to the result of
the identification code checking work among the plurality of channels.
[0016] Preferably, the allocation unit may allocate a short cycle code as the input cycle
identification code of a channel whose input cycle is equal to or smaller than a total
data input time of the data input device among the plurality of channels, and allocate
a long cycle code as the input cycle identification code of a channel whose input
cycle is greater than the total data input time of the data input device among the
plurality of channels.
[0017] Preferably, the allocation unit may calculate the total data input time using an
equation below:

where Tt represents the total data input time, nt represents the number of channels
of the plurality of channels, Ti represents a data input time per channel, and Ts
represents a channel change time.
[0018] Preferably, the allocation unit may calculate the long cycle code by using at least
one of the input cycle of a channel whose input cycle is greater than the total data
input time of the data input device among the plurality of channels, the number of
channels whose input cycle is equal to or smaller than the total data input time of
the data input device among the plurality of channels, and a minimum data input time
of the data input device.
[0019] Preferably, the allocation unit may calculate the long cycle code including the number
of times of input standby of a channel whose input cycle is greater than the total
data input time of the data input device among the plurality of channels.
[0020] Preferably, the allocation unit may calculate the minimum data input time using an
equation below:

where Tmin represents the minimum data input time, Ti represents a data input time
per channel, and Ts represents a channel change time.
[0021] Preferably, the allocation unit may calculate the long cycle code using an equation
below:

where Cl represents the long cycle code, Ci represents the input cycle of a channel
whose input cycle is greater than the total data input time of the data input device
among the plurality of channels, ns represents the number of channels whose input
cycle is equal to or smaller than the total data input time of the data input device
among the plurality of channels, and Tmin represents the minimum data input time.
[0022] Preferably, the control unit may perform the identification code checking work to
each of the plurality of channels in order, and when the input cycle identification
code of a channel is the short cycle code and the input identification code of the
channel is the input code as a result of the identification code checking work, the
control unit may change the input identification code of the channel into the non-input
code and controls the data input device to receive the data through the corresponding
channel.
[0023] Preferably, the control unit may control the data input device to receive the data
one time through all channels whose input cycle identification code is the short cycle
code, and then changes the input identification code into the input code.
[0024] Preferably, the control unit may perform the identification code checking work to
each of the plurality of channels in order, and when the input cycle identification
code of a channel is the long cycle code and the input identification code of the
channel is the input code as a result of the identification code checking work, the
control unit may change the input identification code of the channel into the long
cycle code.
[0025] Preferably, whenever controlling the data input device to receive the data one time
through all channels whose input cycle identification code is the short cycle code,
the control unit may decrease the changed long cycle code, and when the decreased
long cycle code of a channel becomes equal to the input code, the control unit may
control the data input device to receive the data through the corresponding channel.
[0026] Preferably, the allocation unit may allocate the event code as the input cycle identification
code of a channel that receives the data when an input request signal is received
among the plurality of channels, and when the input request signal is received, the
allocation unit may allocate the input code as the input identification code of the
corresponding channel.
[0027] Preferably, the control unit may perform the identification code checking work to
each of the plurality of channels in order, and when the input cycle identification
code of a channel is the event code and the input identification code of the channel
is the input code as a result of the identification code checking work, the control
unit may change the input identification code of the channel into the non-input code
and controls the data input device to receive the data through the corresponding channel.
[0028] In another aspect of the present disclosure, there is also provided a battery pack,
which comprises the data input scheduling apparatus.
[0029] In another aspect of the present disclosure, there is also provided a vehicle, which
comprises the data input scheduling apparatus.
Advantageous Effects
[0030] According to the present disclosure, since a data input device is controlled to receive
data to a corresponding channel among a plurality of channels, which corresponds to
the result of an identification code checking work for checking an input cycle identification
code and an input identification code, it is possible to receive data within an input
cycle without exceeding the input cycle of the channel, thereby preventing an error
from occurring in the input data.
DESCRIPTION OF DRAWINGS
[0031]
FIG. 1 is a circuit diagram schematically showing a configuration and circuit connection
of a data input scheduling apparatus according to an embodiment of the present disclosure
and a data input device including the data input scheduling apparatus.
FIG. 2 is a diagram showing an input cycle predetermined for each of a plurality of
channels provided in the data input device.
FIG. 3 is a diagram showing an example where an allocation unit allocates an input
cycle identification code and an input identification code to each of the plurality
of channels.
FIG. 4 is a diagram showing another example where the allocation unit allocates an
input cycle identification code and an input identification code to each of the plurality
of channels.
FIG. 5 is a diagram showing channels receiving data in order by controlling the data
input device using a control unit.
FIGS. 6 to 10 are diagrams showing other examples where the allocation unit allocates
an input cycle identification code and an input identification code to each of the
plurality of channels.
BEST MODE
[0032] The above objects, features and advantages will be described in detail below with
reference to the accompanying drawings, so that those skilled in the art to which
the present disclosure belongs can easily implement the technical idea of the present
disclosure. In the explanations of the present disclosure, if it is deemed that any
specific explanation of the related technology can unnecessarily obscure the gist
of the present disclosure, the detailed explanation may be omitted. Hereinafter, a
preferred embodiment according to the present disclosure will be described in detail
with reference to the accompanying drawings. In the drawings, the same reference numerals
are used to indicate the same or similar components.
[0033] FIG. 1 is a circuit diagram schematically showing a configuration and circuit connection
of a data input scheduling apparatus according to an embodiment of the present disclosure
and a data input device including the data input scheduling apparatus.
[0034] Referring to FIG. 1, the data input scheduling apparatus 100 according to an embodiment
of the present disclosure may include an allocation unit 110, a control unit 120 and
a memory unit 130. The data input scheduling apparatus 100 may be included in a data
input device 200 to control an input order of data that are input to channels of the
data input device 200.
[0035] Here, the data input device 200 may be a battery management system that is included
in a battery pack to receive data measured from the battery pack. At this time, the
data measured from the battery pack and received in the data input device 200 may
be at least one of a voltage of the battery pack, a voltage of a fuse, a voltage of
an output terminal of a positive electrode of the battery pack, a voltage of an insulation
resistor, and a voltage of an output terminal of a negative electrode of the battery
pack. In addition, the data input device 200 may include a plurality of channels 1b,
..., 5b for receiving the input data as above.
[0036] The following description will be based on a case where five channels 1b, ..., 5b
are provided at the data input device 200. For example, a voltage of the battery pack,
a voltage of a fuse, a voltage of an output terminal of a positive electrode of the
battery pack, a voltage of an insulation resistor, and a voltage of an output terminal
of a negative electrode of the battery pack may be input as data to the plurality
of channels 1b, ..., 5b of the data input device 200, respectively. For this, the
plurality of channels 1b, ..., 5b may be connected a plurality of data output terminals
1a, ..., 5a that outputs a voltage of the battery pack, a voltage of a fuse, a voltage
of an output terminal of a positive electrode of the battery pack, a voltage of an
insulation resistor, and a voltage of an output terminal of a negative electrode of
the battery pack, respectively.
[0037] The allocation unit 110 may allocate any one of a short cycle code, a long cycle
code and an event code as an input cycle identification code to each of the plurality
of channels 1b, ..., 5b. In addition, the allocation unit 110 may allocate any one
of an input code and a non-input code as an input identification code to each of the
plurality of channels 1b, ..., 5b.
[0038] More specifically, the allocation unit 110 may allocate any one of a short cycle
code, a long cycle code and an event code to each of the plurality of channels 1b,
..., 5b as the input cycle identification code for identifying an input cycle. In
addition, the allocation unit 110 may allocate any one of an input code and a non-input
code to each of the plurality of channels as the input identification code for identifying
whether or not to receive data.
[0039] Here, the short cycle code may be a code for identifying a channel which should receive
data at every relatively short time. For example, the short cycle code may be "0X8000".
In addition, the long cycle code may be a code for identifying a channel which should
receive data at every relatively long time. For example, the long cycle code may be
"10" or "5". Moreover, the event code may be a code for identifying a channel which
should receive data when an input request signal is received from the outside. For
example, the event code may be "0X4000".
[0040] Meanwhile, the input code may be a code meaning that the control unit 120, explained
later, should control the data input device 200 to receive data through the corresponding
channel. For example, the input code may be "0" or "1". In addition, the non-input
code may be a code meaning that the control unit 120, explained later, should control
the data input device 200 not to receive data through the corresponding channel. For
example, the non-input code may be "0" or "1".
[0041] When input identification codes are initially allocated to all of the plurality of
channels 1b, ..., 5b, the allocation unit 110 may allocate the input code as the input
identification codes of the channels 1b, ..., 4b whose input cycle identification
codes are the short cycle code or the long cycle code among the plurality of channels
1b, ..., 5b. In addition, when the input identification codes of the plurality of
channels are initially allocated, the allocation unit 110 may allocate the non-input
code as the input identification code of the channel 5b whose input cycle identification
code is the event code among the plurality of channels 1b, ..., 5b.
[0042] Meanwhile, the allocation unit 110 may set the input cycle identification code as
one of a short cycle code, a long cycle code and an event code, corresponding to the
input cycles of the plurality of channels 1b, ..., 5b.
[0043] More specifically, the allocation unit 110 may allocate the short cycle code as the
input cycle identification codes of the channels 1b, 3b whose input cycles are equal
to or smaller than a total data input time of the data input device 200 among the
plurality of channels 1b, ..., 5b.
[0044] Here, the total data input time may be a time required for receiving data one time
through all of the plurality of channels. More specifically, when data is received
through the plurality of channels, if data is received through any one channel, a
data input time required for inputting the data and a channel change time required
for changing the channel into another channel may be taken.
[0045] From this, the allocation unit 110 may calculate the total data input time using
Equation 1 below.

where Tt represents the total data input time, nt represents the number of channels
of the plurality of channels, Ti represents a data input time per channel, and Ts
represents a channel change time.
[0046] The allocation unit 110 may allocate the short cycle as the input cycle identification
codes of the channels 1b, 3b whose input cycle is equal to or smaller than the total
data input time that is required for receiving data through all of the plurality of
channels 1b, ..., 5b.
[0047] Meanwhile, the allocation unit 110 may allocate the long cycle code as the input
cycle identification codes of the channels 2b, 4b whose input cycles are greater than
the total data input time of the data input device 200 among the plurality of channels
1b, ..., 5b.
[0048] At this time, the allocation unit 110 may calculate the long cycle code and allocate
the calculated long cycle code as the input cycle identification codes of the channels
2b, 4b whose input cycles are greater than the total data input time of the data input
device 200 among the plurality of channels 1b, ..., 5b.
[0049] More specifically, the allocation unit 110 may calculate the long cycle code by using
at least one of the input cycles of the channels 2b, 4b whose input cycles are greater
than the total data input time of the data input device 200 among the plurality of
channels 1b, ..., 5b, the number of channels 1b, 3b whose input cycles are equal to
or smaller than the total data input time of the data input device 200 among the plurality
of channels 1b, ..., 5b, and a minimum data input time of the data input device 200.
[0050] Here, the minimum data input time may mean a minimum time required for receiving
data through one channel.
[0051] At this time, the allocation unit 110 may calculate the minimum data input time using
Equation 2 below.

where Tmin represents the minimum data input time, Ti represents a data input time
per channel, and Ts represents a channel change time.
[0052] In other words, the allocation unit 110 may calculate the long cycle code including
the number of times of input standby of the channels 2b, 4b whose input cycles are
greater than the total data input time of the data input device 200 among the plurality
of channels 1b, ..., 5b.
[0053] Here, the number of times of input standby may mean the number of times of receiving
data one time through all channels whose input cycles are equal to or greater than
the total data input time of the data input device 200 among the plurality of channels,
without receiving data through a channel whose input cycle is greater than the total
data input time of the data input device 200 among the plurality of channels.
[0054] For example, if the number of times of input standby is "5", data is not received
through the channels 2b, 4b whose input cycles are greater than the total data input
time of the data input device 200 among the plurality of channels 1b, ..., 5b, and
the operation of receiving data one time through all channels 1b, 3b whose input cycles
are equal to or greater than the total data input time of the data input device 200
among the plurality of channels 1b, ..., 5b may be repeated five times.
[0055] At this time, the allocation unit 110 may calculate the long cycle code using Equation
3 below.

where Cl represents the long cycle code, Ci represents the input cycle of a channel
whose input cycle is greater than the total data input time of the data input device
among the plurality of channels, ns represents the number of channels whose input
cycle is equal to or smaller than a total data input time of the data input device
among the plurality of channels, and Tmin represents the minimum data input time.
[0056] FIG. 2 is a diagram showing an input cycle predetermined for each of a plurality
of channels provided in the data input device, and FIG. 3 is a diagram showing an
example where the allocation unit allocates an input cycle identification code and
an input identification code to each of the plurality of channels.
[0057] Referring to FIGS. 2 and 3 further, the process for the allocation unit 110 to allocate
an input cycle identification code and an input identification code to each of the
plurality of channels 1b, ..., 5b will be described as an example, based on the case
where among the plurality of channels 1b, ..., 5b included in the data input device
200, the input cycles of the channel "1b", the channel "2b", the channel "3b" and
the channel "4b" are respectively determined in advance as 10 ms, 100 ms, 10 ms and
50 ms, the input cycle of the channel "5b" is not determined, and the data input time
per channel and the channel change time are respectively 3 ms and 2 ms.
[0058] First, the allocation unit 110 may calculate the total data input time as 23 ms using
Equation 1.
[0059] As shown in FIG. 3, after that, the allocation unit 110 may allocate the short cycle
code of "0X8000" as the input cycle identification codes of the channel "1b" and the
channel "3b" whose input cycles are equal to or smaller than the total data input
time of 23 ms.
[0060] In addition, the allocation unit 110 may calculate the long cycle code as "10" and
"5" to allocate the long cycle code as the input cycle identification codes of the
channel "2b" and the channel "4b" whose input cycles are greater than the total data
input time of 23 ms by using Equation 3, and allocate the calculated long cycle codes
of "10" and "5" as the input cycle identification codes of the channel "2b" and the
channel "4b", respectively.
[0061] Moreover, the allocation unit 110 may allocate the event code of "0X4000" as the
input cycle identification code of the channel "5b" whose input cycle is not determined
in advance.
[0062] Meanwhile, when the input identification codes of the plurality of channels 1b, ...,
5b are initially allocated, the allocation unit 110 may allocate the input code "0"
as the input identification codes of the channels 1b, ..., 4b whose input cycle identification
codes are the short cycle code or the long cycle code among the plurality of channels
1b, ..., 5b. In addition, when the input identification codes of the plurality of
channels 1b, ..., 5b are initially allocated, the allocation unit 110 may allocate
the non-input code "0" as the input identification code of the channel 5b whose input
cycle identification code is the event code among the plurality of channels 1b, ...,
5b.
[0063] At this time, for the input identification codes of the channels 1b, ..., 4b whose
input cycle identification codes are the short cycle code or the long cycle code among
the plurality of channels 1b, ..., 5b, "0" may be allocated as the input code, and
"1" may be allocated as the non-input code. In addition, for the input identification
code of the channel 5b whose input cycle identification code is the event code among
the plurality of channels 1b, ..., 5b, "1" may be allocated as the input code, and
"0" may be allocated as the non-input code.
[0064] Finally, the allocation unit 110 may allocate the input cycle identification code
and the input identification code to each of the plurality of channels 1b, ..., 5b
as shown in FIG. 3.
[0065] Hereinafter, the process for control unit 120 to control the data input device 200
to receive data through any one channel among the plurality of channels 1b, ..., 5b
by using the input cycle identification code and the input identification code will
be described.
[0066] FIG. 4 is a diagram showing another example where the allocation unit allocates an
input cycle identification code and an input identification code to each of the plurality
of channels, FIG. 5 is a diagram showing channels receiving data in order by controlling
the data input device using a control unit, and FIGS. 6 to 10 are diagrams showing
other examples where the allocation unit allocates an input cycle identification code
and an input identification code to each of the plurality of channels.
[0067] Referring to FIGS. 3 to 10 further, the control unit 120 may control the data input
device 200 to receive any one channel among the plurality of channels 1b, ..., 5b,
corresponding to the input cycle identification code and the input identification
code allocated to the plurality of channels 1b, ..., 5b by the allocation unit 110.
[0068] More specifically, the allocation unit 110 may perform an identification code checking
work for checking the input cycle identification code and the input identification
code, and control the data input device 200 to receive data through a channel corresponding
to the result of the identification code checking work among the plurality of channels
1b, ..., 5b.
[0069] First, the control unit 120 may perform the identification code checking work to
each of the plurality of channels 1b, ..., 5b in order. If the input cycle identification
code is the short cycle code and the input identification code is the input code as
a result of the identification code checking work, the control unit 120 may change
the input identification code into the non-input code. After that, the control unit
120 may control the data input device 200 to receive data through the channels 1b,
3b whose input cycle identification code is the short cycle code and whose input identification
code is changed from the input code to the non-input code.
[0070] In other words, as shown in FIG. 4, the control unit 120 may change the input identification
code of the channels "1b", "3b" whose input cycle identification code is checked as
the short cycle code "0X8000" and whose input identification code is checked as the
input code "0" in the initial identification code checking work, into the non-input
code "1". Subsequently, as shown in FIG. 5, the control unit 120 may control the data
input device 200 to receive data through the channels "1b", "3b" whose input cycle
identification code is checked as the short cycle code and whose input identification
code is checked as the input code, in order.
[0071] In the above, it has been described that the control unit 120 controls the data input
device 200 to receive data after changing the input identification code into the non-input
code if the input cycle identification code is the short cycle code and the input
identification code is the input code as a result of the identification code checking
work. However, it is also possible that the control unit 120 controls the data input
device 200 to firstly receive data through the channels 1b, 3b whose input cycle identification
code is the short cycle code and whose input identification code is the input code,
and then changes the input identification code into the non-input code.
[0072] After that, the control unit 120 may perform the identification code checking work
one time and then change the input identification code, which has been changed into
the non-input code, into the input code.
[0073] In other words, as shown in FIG. 6, the control unit 120 may change the input identification
code into the input code "0", after controlling the data input device 200 to receive
data one time through the channels "1b", "3b" whose input cycle identification code
is the short cycle code "0X8000".
[0074] After that, the control unit 120 may perform the identification code checking work
to each of the plurality of channels 1b, ..., 5b in order, and then, if the identification
code is the long cycle code and the input identification code is the input code as
a result of the identification code checking work, the control unit 120 may change
the input cycle input identification code into the long cycle code.
[0075] In other words, after controlling the data input device 200 to receive data one time
through the channels 1b, 3b whose input cycle identification code is the short cycle
code and whose input identification code is the input code, as shown in FIG. 7, the
control unit 120 may change the input identification codes of the channels "2b", "4b"
whose input cycle identification codes are the long cycle codes "10", "5" and whose
input identification codes are the input code "0", into the long cycle codes "10",
"5" allocated as the input cycle identification code.
[0076] After that, whenever controlling the data input device 200 to receive data one time
through all channels 1b, 3b whose input cycle identification codes are the short cycle
code, the control unit 120 may decrease the changed long cycle code, and if the decreased
long cycle code becomes equal to the input code, the control unit 120 may control
the data input device 200 to receive data through the corresponding channels 2b, 4b.
[0077] In other words, as shown in FIG. 8, whenever controlling the data input device 200
to receive data one time through all channels "1b", "3b" whose input cycle identification
codes are the short cycle code, the control unit 120 may decrease the long cycle codes
"10", "5" that have been changed and allocated to the input identification codes of
the channels "2b", "4b".
[0078] After that, if the long cycle code that has been changed and allocated as the input
identification codes of the channels "2b", "4b" is equal to the input code "0", as
shown in FIG. 5, the control unit 120 may control the data input device 200 to receive
data through the channels "2b", "4b".
[0079] Meanwhile, the allocation unit 110 allocates the event code as the input cycle identification
code of the channel 5b that receives data when an input request signal is received
among the plurality of channels 1b, ..., 5b, and if the input request signal is received,
the allocation unit 110 may allocate the input code as the input identification code
of the channel 5b.
[0080] More specifically, as shown in FIG. 9, if the input request signal is received, the
allocation unit 110 may allocate the input code "1" as the input identification code
of the channel "5b" whose input cycle identification code is allocated as the event
code "0X4000".
[0081] After that, the control unit 120 performs the identification code checking work to
each of the plurality of channels 1b, ..., 5b in order, and, if the input cycle identification
code is the event code and the input identification code is the input code as a result
of the identification code checking work, the control unit 120 may change the input
identification code into the non-input code and control the data input device 200
to receive the data through the corresponding channel 5b.
[0082] In other words, if the input request signal is received, as shown in FIG. 10, the
control unit 120 may change the input identification code of the channel "5b" whose
input cycle identification code is checked as the event code "0X4000" and whose input
identification code is checked as the input code "1" in the identification code checking
work, into the non-input code "0". Subsequently, as shown in FIG. 5, the control unit
120 may control the data input device 200 to receive data through the channel "5b"
whose input cycle identification code is checked as the event code and whose input
identification code is checked as the input code.
[0083] By doing so, the control unit 120 may control the data input device 200 to receive
data through a channel that is determined as having a relatively long input cycle
after standing by the number of times of input standby described above, thereby preventing
an error from occurring in the data input, which may be generated when receiving data
through a plurality of channels in order.
[0084] The memory unit may store the input cycle identification code and the input identification
code allocated to each of the plurality of channels 1b, ..., 5b, and output or change
the input cycle identification code and the input identification code corresponding
to a reading or writing command of the allocation unit 110 and the control unit 120
and then store the same.
[0085] Meanwhile, a battery pack according to the present disclosure may further include
at least one battery module, a case for accommodating the battery module, a cartridge,
a bus bar, a battery management system for monitoring and managing electrical characteristics
of the battery pack, and the like. In particular, the battery pack according to the
present disclosure further includes the data input scheduling apparatus 100 provided
in the battery management system to schedule the data input required for the battery
management system to monitor and manage the electrical characteristics of the battery
pack.
[0086] The data input scheduling apparatus 100 according to the present disclosure may be
applied to a vehicle such as an electric vehicle or a hybrid vehicle. In other words,
the vehicle according to the present disclosure may include the data input scheduling
apparatus 100 according to the present disclosure.
[0087] The present disclosure can be substituted, modified or changed in various ways without
departing from the scope of the present disclosure by those skilled in the art and
thus is not limited to the above embodiments and the accompanying drawings.
1. A data input scheduling apparatus of a data input device that receives data through
a plurality of channels, the data input scheduling apparatus comprising:
an allocation unit configured to allocate any one of a short cycle code, a long cycle
code and an event code as an input cycle identification code and allocate any one
of an input code and a non-input code as an input identification code to each of the
plurality of channels; and
a control unit configured to perform an identification code checking work for checking
the input cycle identification code and the input identification code and to control
the data input device to receive the data through a channel corresponding to the result
of the identification code checking work among the plurality of channels.
2. The data input scheduling apparatus according to claim 1,
wherein the allocation unit allocates a short cycle code as the input cycle identification
code of a channel whose input cycle is equal to or smaller than a total data input
time of the data input device among the plurality of channels, and allocates a long
cycle code as the input cycle identification code of a channel whose input cycle is
greater than the total data input time of the data input device among the plurality
of channels.
3. The data input scheduling apparatus according to claim 2,
wherein the allocation unit calculates the total data input time using an equation
below:

where Tt represents the total data input time, nt represents the number of channels
of the plurality of channels, Ti represents a data input time per channel, and Ts
represents a channel change time.
4. The data input scheduling apparatus according to claim 2,
wherein the allocation unit calculates the long cycle code by using at least one of
the input cycle of a channel whose input cycle is greater than the total data input
time of the data input device among the plurality of channels, the number of channels
whose input cycle is equal to or smaller than the total data input time of the data
input device among the plurality of channels, and a minimum data input time of the
data input device.
5. The data input scheduling apparatus according to claim 4,
wherein the allocation unit calculates the long cycle code including the number of
times of input standby of a channel whose input cycle is greater than the total data
input time of the data input device among the plurality of channels.
6. The data input scheduling apparatus according to claim 4, wherein the allocation unit
calculates the minimum data input time using an equation below:

where Tmin represents the minimum data input time, Ti represents a data input time
per channel, and Ts represents a channel change time.
7. The data input scheduling apparatus according to claim 4,
wherein the allocation unit calculates the long cycle code using an equation below:

where Cl represents the long cycle code, Ci represents the input cycle of a channel
whose input cycle is greater than the total data input time of the data input device
among the plurality of channels, ns represents the number of channels whose input
cycle is equal to or smaller than the total data input time of the data input device
among the plurality of channels, and Tmin represents the minimum data input time.
8. The data input scheduling apparatus according to claim 1,
wherein the control unit performs the identification code checking work to each of
the plurality of channels in order, and when the input cycle identification code of
a channel is the short cycle code and the input identification code of the channel
is the input code as a result of the identification code checking work, the control
unit changes the input identification code of the channel into the non-input code
and controls the data input device to receive the data through the corresponding channel.
9. The data input scheduling apparatus according to claim 8,
wherein the control unit controls the data input device to receive the data one time
through all channels whose input cycle identification code is the short cycle code,
and then changes the input identification code into the input code.
10. The data input scheduling apparatus according to claim 1,
wherein the control unit performs the identification code checking work to each of
the plurality of channels in order, and when the input cycle identification code of
a channel is the long cycle code and the input identification code of the channel
is the input code as a result of the identification code checking work, the control
unit changes the input identification code of the channel into the long cycle code.
11. The data input scheduling apparatus according to claim 10,
wherein whenever controlling the data input device to receive the data one time through
all channels whose input cycle identification code is the short cycle code, the control
unit decreases the changed long cycle code, and when the decreased long cycle code
of a channel becomes equal to the input code, the control unit controls the data input
device to receive the data through the corresponding channel.
12. The data input scheduling apparatus according to claim 1,
wherein the allocation unit allocates the event code as the input cycle identification
code of a channel that receives the data when an input request signal is received
among the plurality of channels, and when the input request signal is received, the
allocation unit allocates the input code as the input identification code of the corresponding
channel.
13. The data input scheduling apparatus according to claim 12,
wherein the control unit performs the identification code checking work to each of
the plurality of channels in order, and when the input cycle identification code of
a channel is the event code and the input identification code of the channel is the
input code as a result of the identification code checking work, the control unit
changes the input identification code of the channel into the non-input code and controls
the data input device to receive the data through the corresponding channel.