EP3341277A1 - Steuergerät für ein fahrrad - Google Patents

Steuergerät für ein fahrrad

Info

Publication number
EP3341277A1
EP3341277A1 EP16769873.7A EP16769873A EP3341277A1 EP 3341277 A1 EP3341277 A1 EP 3341277A1 EP 16769873 A EP16769873 A EP 16769873A EP 3341277 A1 EP3341277 A1 EP 3341277A1
Authority
EP
European Patent Office
Prior art keywords
operating system
data
control
control device
interface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP16769873.7A
Other languages
English (en)
French (fr)
Inventor
Daniel MEERMANN
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bloks AG
Original Assignee
Bloks AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bloks AG filed Critical Bloks AG
Publication of EP3341277A1 publication Critical patent/EP3341277A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62JCYCLE SADDLES OR SEATS; AUXILIARY DEVICES OR ACCESSORIES SPECIALLY ADAPTED TO CYCLES AND NOT OTHERWISE PROVIDED FOR, e.g. ARTICLE CARRIERS OR CYCLE PROTECTORS
    • B62J45/00Electrical equipment arrangements specially adapted for use as accessories on cycles, not otherwise provided for
    • B62J45/40Sensor arrangements; Mounting thereof
    • B62J45/41Sensor arrangements; Mounting thereof characterised by the type of sensor
    • B62J45/414Acceleration sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62JCYCLE SADDLES OR SEATS; AUXILIARY DEVICES OR ACCESSORIES SPECIALLY ADAPTED TO CYCLES AND NOT OTHERWISE PROVIDED FOR, e.g. ARTICLE CARRIERS OR CYCLE PROTECTORS
    • B62J45/00Electrical equipment arrangements specially adapted for use as accessories on cycles, not otherwise provided for
    • B62J45/20Cycle computers as cycle accessories
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62JCYCLE SADDLES OR SEATS; AUXILIARY DEVICES OR ACCESSORIES SPECIALLY ADAPTED TO CYCLES AND NOT OTHERWISE PROVIDED FOR, e.g. ARTICLE CARRIERS OR CYCLE PROTECTORS
    • B62J45/00Electrical equipment arrangements specially adapted for use as accessories on cycles, not otherwise provided for
    • B62J45/40Sensor arrangements; Mounting thereof
    • B62J45/41Sensor arrangements; Mounting thereof characterised by the type of sensor
    • B62J45/412Speed sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62JCYCLE SADDLES OR SEATS; AUXILIARY DEVICES OR ACCESSORIES SPECIALLY ADAPTED TO CYCLES AND NOT OTHERWISE PROVIDED FOR, e.g. ARTICLE CARRIERS OR CYCLE PROTECTORS
    • B62J45/00Electrical equipment arrangements specially adapted for use as accessories on cycles, not otherwise provided for
    • B62J45/40Sensor arrangements; Mounting thereof
    • B62J45/41Sensor arrangements; Mounting thereof characterised by the type of sensor
    • B62J45/415Inclination sensors
    • B62J45/4151Inclination sensors for sensing lateral inclination of the cycle
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62MRIDER PROPULSION OF WHEELED VEHICLES OR SLEDGES; POWERED PROPULSION OF SLEDGES OR SINGLE-TRACK CYCLES; TRANSMISSIONS SPECIALLY ADAPTED FOR SUCH VEHICLES
    • B62M6/00Rider propulsion of wheeled vehicles with additional source of power, e.g. combustion engine or electric motor
    • B62M6/40Rider propelled cycles with auxiliary electric motor
    • B62M6/45Control or actuating devices therefor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62MRIDER PROPULSION OF WHEELED VEHICLES OR SLEDGES; POWERED PROPULSION OF SLEDGES OR SINGLE-TRACK CYCLES; TRANSMISSIONS SPECIALLY ADAPTED FOR SUCH VEHICLES
    • B62M6/00Rider propulsion of wheeled vehicles with additional source of power, e.g. combustion engine or electric motor
    • B62M6/40Rider propelled cycles with auxiliary electric motor
    • B62M6/45Control or actuating devices therefor
    • B62M6/50Control or actuating devices therefor characterised by detectors or sensors, or arrangement thereof
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62MRIDER PROPULSION OF WHEELED VEHICLES OR SLEDGES; POWERED PROPULSION OF SLEDGES OR SINGLE-TRACK CYCLES; TRANSMISSIONS SPECIALLY ADAPTED FOR SUCH VEHICLES
    • B62M9/00Transmissions characterised by use of an endless chain, belt, or the like
    • B62M9/04Transmissions characterised by use of an endless chain, belt, or the like of changeable ratio
    • B62M9/06Transmissions characterised by use of an endless chain, belt, or the like of changeable ratio using a single chain, belt, or the like
    • B62M9/10Transmissions characterised by use of an endless chain, belt, or the like of changeable ratio using a single chain, belt, or the like involving different-sized wheels, e.g. rear sprocket chain wheels selectively engaged by the chain, belt, or the like
    • B62M9/12Transmissions characterised by use of an endless chain, belt, or the like of changeable ratio using a single chain, belt, or the like involving different-sized wheels, e.g. rear sprocket chain wheels selectively engaged by the chain, belt, or the like the chain, belt, or the like being laterally shiftable, e.g. using a rear derailleur
    • B62M9/121Rear derailleurs
    • B62M9/122Rear derailleurs electrically or fluid actuated; Controls thereof
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62MRIDER PROPULSION OF WHEELED VEHICLES OR SLEDGES; POWERED PROPULSION OF SLEDGES OR SINGLE-TRACK CYCLES; TRANSMISSIONS SPECIALLY ADAPTED FOR SUCH VEHICLES
    • B62M9/00Transmissions characterised by use of an endless chain, belt, or the like
    • B62M9/04Transmissions characterised by use of an endless chain, belt, or the like of changeable ratio
    • B62M9/06Transmissions characterised by use of an endless chain, belt, or the like of changeable ratio using a single chain, belt, or the like
    • B62M9/10Transmissions characterised by use of an endless chain, belt, or the like of changeable ratio using a single chain, belt, or the like involving different-sized wheels, e.g. rear sprocket chain wheels selectively engaged by the chain, belt, or the like
    • B62M9/12Transmissions characterised by use of an endless chain, belt, or the like of changeable ratio using a single chain, belt, or the like involving different-sized wheels, e.g. rear sprocket chain wheels selectively engaged by the chain, belt, or the like the chain, belt, or the like being laterally shiftable, e.g. using a rear derailleur
    • B62M9/131Front derailleurs
    • B62M9/132Front derailleurs electrically or fluid actuated; Controls thereof
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62MRIDER PROPULSION OF WHEELED VEHICLES OR SLEDGES; POWERED PROPULSION OF SLEDGES OR SINGLE-TRACK CYCLES; TRANSMISSIONS SPECIALLY ADAPTED FOR SUCH VEHICLES
    • B62M25/00Actuators for gearing speed-change mechanisms specially adapted for cycles
    • B62M2025/006Actuators for gearing speed-change mechanisms specially adapted for cycles with auxiliary shift assisting means

Definitions

  • the invention relates to a control device for a bicycle.
  • Control units for bicycles are known from the prior art, which control, for example, an electric drive unit of the bicycle or an electric gearshift of the bicycle.
  • the object of the invention is to provide at least one control device that can perform more diverse functions and applications. Moreover, it is an object of the present invention to provide a control device for a bicycle, which ensures a stable and robust execution of applications and performance of functions.
  • the basic idea of the invention is to provide a plurality of operating systems on the control unit, which are executed in parallel and to which different task priorities are assigned.
  • a control device for a bicycle having at least one device which influences the driving characteristics of the bicycle, the control device having control electronics which are adapted to
  • At least one application for controlling and / or monitoring the device affecting the driving characteristics of the bicycle is carried out on the first operating system during normal operation of the control device, and
  • the devices which influence the driving characteristics of the bicycle are, in particular, an electric drive unit which is provided to assist the drive of the bicycle, or an electric gearshift.
  • the applications running on the first operating system to control these devices may control the power of the electric drive unit-degree of assistance-or a selection of a gear.
  • Applications for monitoring this device include, for example, measuring the state of charge of a battery provided for the electric drive unit, determining the current load state of the electric drive unit, determining the currently used gear and / or the like.
  • the custom applications running on the second operating system may be, for example, user-installed applications such as APPs. Concrete examples are navigation systems and Internet applications.
  • one or more applications which assume safety-relevant functions can additionally be executed on the first operating system during normal operation of the control unit.
  • the control device preferably has an interface to which the direction of action (s) for exchanging / receiving control data and / or monitoring data can be connected.
  • One or more sensors providing additional control data or monitoring data necessary for the control and / or monitoring of the device (s); and or
  • One or more display devices for displaying information data output from the first and / or second operating system;
  • One or more devices for generating haptic feedback and / or audio feedback are provided.
  • the sensors may be, for example, a speed sensor, measuring sensors for measuring the state of charge of the battery, sensors for determining the engaged gear, sensors for Measurement of the force acting on a pedal crank of the bicycle, camera sensors, acceleration and tilt sensors, compass sensors, pressure sensors, ultrasonic sensors, and / or the like act.
  • the said input devices may be, for example, a remote control (for example in the form of a touch sensor) for issuing the control instructions.
  • the communication adapters may be, for example, GPS, Bluetooth, Wifi, GSM adapters.
  • control electronics of the control unit is configured to execute a third operating system (OS3) on which system-specific applications are executed.
  • OS3 operating system
  • System-specific applications include the interface application described below, a watchdog application and an update application for updating the applications running on the operating systems.
  • the native applications executing on the third operating system control the first and / or second operating systems.
  • the native applications running on the third operating system include the following applications for controlling the first and / or second operating systems:
  • a watchdog application monitoring the first operating system and / or the second operating system and, depending thereon, changing the first and / or second operating system itself and / or applications executing on the first or second operating system, stop and / or start; and or
  • the interface application is preferably set up to perform an authentication of the first and / or second operating system and to inhibit the data communication if the authentication fails.
  • the controller includes a virtualization layer, preferably a hypervisor, at least between the control electronics and a first virtual machine running the first operating system and a second virtual machine running the second operating system
  • the third operating system for controlling the first and / or second operating system is configured to control the virtualization cache.
  • the virtualization layer is also located between the control electronics and a third virtual machine on which runs the third operating system, wherein the third operating system for controlling the first and / or second operating system is adapted to control the virtualization layer.
  • the control electronics include a CPU (central processing unit) with a single processor core, with the virtualization layer allocating appropriate resources to each virtual machine.
  • control electronics preferably include a CPU (central processing unit) having a plurality of processor cores, wherein the virtualization layer associates at least one processor core with each virtual machine.
  • CPU central processing unit
  • the first operating system a single processor core
  • the second operating system two processor cores
  • the third operating system in turn assigned a single processor core.
  • the watchdog application monitors the first operating system and / or the second operating system by monitoring a utilization of the processor core of the first virtual machine and / or the second virtual machine, and in dependence thereon the first and / or second operating system itself and / or Applications running on the first and / or second operating system modify, terminate and / or launch.
  • the interface application controls the data communication by controlling the virtualization layer accordingly.
  • the third operating system furthermore preferably provides an internal interface for the first and second operating systems, wherein the interface application is set up such that at least the data communication, which contains the control data and security-relevant data, takes place exclusively via the internal interface.
  • the other data can also be communicated via the internal interface, although it is also possible, as an alternative, for this data to be transmitted directly to the first and second operating systems. but the first and second operating systems will only be able to process them after being checked by the third operating system.
  • the interface application controls the data communication by controlling the virtualization layer such that data that is in an interface memory allocated by the virtualization layer of the first and / or the second virtual machine is checked before being passed to the corresponding operating system.
  • the virtualization layer assigns the first operating system a first virtual frame memory for storing the corresponding information data and the second operating system a second virtual frame memory for storing the corresponding information data, wherein the virtualization layer, the information data from the first and second frame memory before output to the display device for common display on the display device in a third frame memory merges.
  • the virtualization layer can also process signals for the devices for generating the audio feedback and / or the haptic feedback via corresponding latches.
  • the attached figure shows an inventive control device 1, which is provided for installation in a bicycle with at least one device affecting the driving characteristics of the bicycle.
  • the device mentioned may be, for example, an electrical act sches drive unit, which takes over the function of an electric drive assistance, or to an electric gear shift.
  • the control unit 1 has a virtualization layer 2, which preferably allocates the control electronics (hardware) to three virtual machines.
  • the basic idea is to run two or more operating systems with different task priorities in parallel.
  • three operating systems OS1, OS2, OS3 are installed on the control unit 1.
  • the virtualization layer 2 (preferably a hypervisor) abstracts the underlying hardware or control electronics (not shown) for realizing the multiple virtual machines, each of the operating systems being installed on one of the virtual machines.
  • the hardware or control electronics includes a CPU having a plurality of processor cores, wherein the virtual machine for the operating system OS1 is assigned a processor core, the operating system OS2 is assigned two processor cores, and the operating system OS3 is assigned a processor core through the virtualization layer 2.
  • the control unit 1 includes an interface, not shown, to which the device to be controlled (for example, drive assistance or gear shift) is connected for input / output of control data and / or monitoring data.
  • the device to be controlled for example, drive assistance or gear shift
  • the individual operating systems OS1 and OS3 or the corresponding processor cores can preferably be started and terminated. Splitting the functions into multiple operating systems increases the robustness of all concurrent applications, accelerated and preferred the implementation of legal requirements assured.
  • OS1 Bicycle Specific Applications
  • OS2 user-specific applications (user-installed applications such as APPs, Internet applications, navigation applications and the like)
  • OS3 native applications (update applications, Watch Dog application, interface application to control data communication between vehicle / bike and OS1 and OS2 or other OS)
  • Preference can also be connected to the interface: One or more sensors providing additional control data / monitoring data necessary for the control and / or monitoring of the device (s); and or
  • One or more input devices eg, touch sensor signal, probe signal, etc.
  • the user can input control instructions for controlling the device (s), which are passed to the interface in the form of corresponding command data; and or
  • One or more input devices eg, touch sensor signal, probe signal, etc.
  • the user can input setting instructions for setting the user-specific applications, which are passed to the interface in the form of corresponding setting data; and or
  • One or more communication adapters e.g., GPS, Bluetooth, Wifi, GSM, etc. for inputting communication signal data providing communication data necessary for the execution of the user-specific applications; and or
  • a data transmission device for transmitting and installing the user-specific applications; and or
  • One or more display devices for displaying information data output from the first and / or second operating system.
  • OS3 provides the other operating systems (0S1, OS2) with internal interfaces for this purpose and executes a corresponding interface application for implementing the data communication.
  • the data flow of the data communication is shown in the figure by the solid arrows.
  • the data flow indicated by dashed arrows in the figure relates, with respect to the first operating system OS1, to the data communication of the command data obtained from an input device and, with respect to the second operating system OS2, to the setting data also obtained from an input device become.
  • OS3 is set up to check the command data and setting data before execution of the corresponding control instructions or setting instructions, if execution thereof is permitted.
  • the entire data exchange occurs indirectly via OS3, i. in the figure along the solid arrows.
  • OS3 or the interface application executed on it is set up to control the virtualization layer accordingly.
  • an access rights application is preferably executed on the operating system OS3, which determines which data the first and / or second operating system has access to and which data may be transferred to the operating systems OS1, OS2.
  • a watchdog application is preferably installed on the operating system OS3, which is the first operating system
  • This watchdog application will preferably in OS3 executes and monitors the general availability and utilization of the other operating systems (OS1, OS2) and of individual applications that are executed by these operating systems, eg the display of legally required information: current speed or the control lamp for the high beam, etc.
  • the watchdog application can preferably cause the hypervisor 2 to terminate the execution of individual operating systems, to restart them or to inform the monitored operating system via the internal interface to start or terminate a specific program or specific application.
  • the contents of multiple image memories are merged by the hypervisor 2 into a single image memory (e.g., physical frame buffer), which is then brought to display on the display device screen.
  • the separation of the various operating systems increases the operability of each operating system and the applications / programs executed by the operating system, or reduces failures due to dependencies between applications / programs.
  • Dependencies between an application The specific application / program (eg navigation) and an application for a bicycle component / vehicle component (eg battery) are avoided, there is no interaction and these subcomponents of the system do not mutually coruscate each other.
  • the software watchdog monitors the clock rate (in Hz) of the clock
  • the watchdog application detects and prevents the occurrence of such a system state by terminating the responsible operating system or the respective process in a timely manner and, if necessary, restarting it.
  • the functional range of the operating system eg low-level kernel driver
  • the number of program modules to load eg Bluetooth stack
  • the complexity of a user interface eg HTML
  • the vehicle manufacturer, the dealer or the end customer could manipulate the display of certain information demanded by the legislator (obscure display, modify calculation, import new program code, etc.).
  • the access right application i. granting of access rights
  • Rapidly establishing a system state that is meaningful for the respective application is also possible without the use of conventional fastboot strategies, in which a specific operating system state is stored in the volatile memory (flash memory) and the corresponding memory module has to be supplied with voltage. This can significantly reduce the capacity of any integrated battery.
  • the control unit 1 can preferably already be programmed with OS1, OS2 and OS3 at the time of its production, so that the OS3. Is dependent on the display device installed at the time of production of the vehicle, at the time of sale of the vehicle by the dealer or subsequently by the end customer of the control unit 1 decides which operating systems (OS1, OS2) must be performed in order to control the display device correctly and to be able to record with content. Thus, a pure LCD interface or a wired remote control does not require the output of content that be calculated by the graphics processor. Thus, depending on the eventual scope of functions, not required processor cores can be deactivated, eg the execution of a higher-value operating system, cf. Android as OS2. This reduces the power consumption considerably depending on the functionality.
  • the solution according to the invention is preferably based on the fact that hardware resources are shared, but also very preferably relates to a virtual instance (OS3) that controls other virtual instances (watch-oog) and these instances (OS1, OS2) in accordance with defined rights Access to data and commands provides.
  • OS3 virtual instance
  • OS1, OS2 virtual instances
  • OS3 interface application
  • OS3 is the only operating system that communicates directly - or via the IPC - with the electrical system.
  • security-critical data or functions that are only restrictedly visible in accordance with a defined rights model are controlled by OS3 as a central instance.
  • the on-board-related command and data flow is thus initially processed / filtered by a central instance OS3.
  • the central instance OS3 recognizes by means of requests / samples executed at regular intervals whether the other instances (OS1 and OS2) correspond to the OS3 required operating state. If OS3 detects an operating state that requires action (eg, OS2 is frozen because a navigation application stops responding to user input), OS3 can direct the virtualization layer to share limited resources (input and output) with the sampled operating system or not at all For example, the display of OS1 may occupy the full screen when OS3 detects that OS2 is no longer on Screen input is responding). For example, OS3 can instruct the virtualization layer to display the full screen content of OS1 during the boot process, and to use a screen layout that will display both OS1 and OS2 after a full boot from OS2.
  • OS3 recognizes by means of requests / samples executed at regular intervals whether the other instances (OS1 and OS2) correspond to the OS3 required operating state. If OS3 detects an operating state that requires action (eg, OS2 is frozen because a navigation application stops responding to user input), OS3 can direct the virtualization layer to share limited

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Transportation (AREA)
  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

Die Erfindung betrifft ein Steuergerät für ein Fahrrad mit mindestens einer die Fahreigenschaften des Fahrrades beeinflussenden Einrichtung, wobei das Steuergerät eine Steuerungselektronik aufweist, die dazu eingerichtet ist, ein erstes Betriebssystem (OS1) und ein zweites Betriebssystem (OS2) parallel auszuführen, wobei auf dem ersten Betriebssystem (OS1) bei bestimmungsgemäßem Betrieb des Steuergerätes zumindest eine Anwendung zur Steuerung und/oder Überwachung der die Fahreigenschaften des Fahrrades beeinflussenden Einrichtung ausgeführt wird, und auf dem zweiten Betriebssystem (OS2) bei bestimmungsgemäßem Betrieb des Steuergerätes anwenderspezifische Anwendungen ausgeführt werden.

Description

STEUERGERÄT EIN FAHRRAD
Die Erfindung betrifft ein Steuergerät für ein Fahrrad.
Aus dem Stand der Technik sind Steuergeräte für Fahrräder bekannt, die beispielsweise ein elektrisches Antriebsaggregat des Fahrrades oder eine elektrische Gangschaltung des Fahrrades steuern.
Aufgabe der Erfindung ist es, zumindest ein Steuergerät zu schaffen, das vielfältigere Funktionen und Anwendungen ausführen kann. Darüber hinaus ist es Ziel der vorliegenden Erfindung, ein Steuergerät für ein Fahrrad zu schaffen, das eine stabile und robuste Ausführung von Anwendungen und Durchführung von Funktionen sicherstellt.
Diese Aufgabe wird mit einem Steuergerät gemäß Patentanspruch 1 gelöst. Bevorzugte Ausführungsformen sind Gegenstand der Unteransprüche.
Grundgedanke der Erfindung ist es, mehrere Betriebssysteme auf dem Steuergerät vorzusehen, die zum einen parallel ausgeführt werden und denen zum anderen verschiedene Aufgabenschwerpunkte zugeordnet werden.
Ein Steuergerät gemäß einem Aspekt der Erfindung ist für ein Fahrrad mit mindestens einer die Fahreigenschaften des Fahrrades beeinflussenden Einrichtung vorgesehen, wobei das Steuergerät eine Steuerungselektronik aufweist, die dazu eingerichtet ist,
ein erstes Betriebssystem und ein zweites Betriebssystem parallel auszuführen, wobei
auf dem ersten Betriebssystem bei bestimmungsgemäßem Betrieb des Steuergerätes zumindest eine Anwendung zur Steuerung und/oder Überwachung der die Fahreigenschaften des Fahrrades beeinflussenden Einrichtung ausgeführt wird, und
auf dem zweiten Betriebssystem (OS2) bei bestimmungsgemäßem Betrieb des Steuergerätes anwenderspezifische Anwendungen ausgeführt werden. Bei den die Fahreigenschaften des Fahrrades beeinflussenden Einrichtungen handelt es sich insbesondere um ein elektrisches Antriebsaggregat, das zur Unterstützung des Antriebes des Fahrrades vorgesehen ist, oder um eine elektrische Gangschaltung.
Die auf dem ersten Betriebssystem ausgeführten Anwendungen zur Steuerung dieser Einrichtungen können beispielsweise die Leistung des elektrischen Antriebsaggregates - Grad der Unterstützung - oder eine Auswahl eines Ganges steuern.
Anwendungen zur Überwachung dieser Einrichtung beinhalten beispielsweise das Messen des Ladezustandes einer für das elektrische Antriebsaggregat vorgesehenen Batterie, die Ermittlung des gegenwärtigen Belastungszustandes des elektrischen Antriebsaggregates, das Bestimmen des gegenwärtig verwendeten Ganges und/oder dergleichen.
Es ist möglich, dass auf dem ersten Betriebssystem bei bestimmungsgemäßem Betrieb des Steuergerätes mehrere Anwendungen ausgeführt werden, die jeweils zur Steuerung oder Überwachung einer von einer Vielzahl von die Fahreigenschaften des Fahrrades beeinflussenden Einrichtungen ausgeführt werden.
Bei den anwenderspezifischen Anwendungen, die auf dem zweiten Betriebssystem ausgeführt werden, kann es sich beispielsweise um benutzerinstallierte Anwendungen, wie beispielsweise APPs, handeln. Konkrete Beispiele sind Navigationssysteme und Internet-Anwendungen.
Darüber hinaus können auf dem ersten Betriebssystem bei bestimmungsgemäßem Betrieb des Steuergerätes zusätzlich eine oder mehrere Anwendungen, die sicherheitsrelevante Funktionen übernehmen, ausgeführt werden.
Hierzu zählen beispielsweise Anwendungen zur Ermittlung der gegenwärtigen Geschwindigkeit des Fahrrades, zur Ermittlung der Funktionsfähigkeit der Bremsen, des Reifendruckes und/oder dergleichen. Bevorzugt weist das Steuergerät eine Schnittstelle auf, an die die Elnrichtung(en) zum Austausch/Erhalt von Steuerungsdaten und/oder Überwachungsdaten anschließbar ist(sind).
Darüber hinaus können an die Schnittstelle anschließbar sein:
• ein oder mehrere Sensoren, die für die Steuerung und/oder Überwachung der Einrichtung(en) notwendige zusätzliche Steuerungsdaten bzw. Überwachungsdaten liefern; und/oder
• ein oder mehrere Sensoren, die für die Übernahme der sicherheitsrelevanten Funktionen notwendige sicherheitsrelevante Daten liefern; und/oder
• ein oder mehrere Eingabe Vorrichtungen, über die der Anwender Steuerungsinstruktionen zur Steuerung der Einrichtung(en) eingeben kann, die an die Schnittstelle in Form von entsprechenden Befehlsdaten übergeben werden; und/oder
• ein oder mehrere Eingabevorrichtungen, über die der Anwender Einstellungsinstruktionen zur Einstellung der anwenderspezifischen Anwendungen eingeben kann, die an die Schnittstelle in Form von entsprechenden Einstellungsdaten übergeben werden; und/oder
• ein oder mehrere Kommunikationsadapter zur Eingabe von Kommunikationssignaldaten, die für die Ausführung der anwenderspezifischen Anwendungen notwendige Kommunikationsdaten liefern;
und/oder
• eine oder mehrere Anzeigevorrichtungen zur Anzeige von Informationsdaten, die von dem ersten und/oder zweiten Betriebssystem ausgegeben werden; und/oder
• ein oder mehrere Vorrichtungen zur Erzeugung eines haptischen Feedbacks und/oder eines Audiofeedbacks.
Bei den Sensoren kann es sich beispielsweise um einen Geschwindigkeitssensor, Messsensoren zur Messung des Ladezustandes der Batterie, Sensoren zur Ermittlung des eingelegten Ganges, Sensoren zur Messung der Krafteinwirkung auf eine Tretkurbel des Fahrrades, Kamera-Sensoren, Beschleunigungs- und Neigesensoren, Kompasssensoren, Drucksensoren, Ultraschallsensoren, und/oder dergleichen handeln.
Die genannten Eingabe Vorrichtungen können beispielsweise eine Fernbedienung (beispielsweise in Form eines Touchsensors) zur Erteilung von den Steuerungsinstruktionen sein. Die Kommunikationsadapter können beispielsweise GPS, Bluetooth, Wifi, GSM-Adapter sein.
Bevorzugt ist die Steuerungselektronik des Steuergerätes dazu eingerichtet ist, ein drittes Betriebssystem (OS3) auszuführen, auf dem systemspezifische Anwendungen ausgeführt werden.
Zu den systemspezifischen Anwendungen zählen die im Folgenden noch erläuterte Schnittstellenanwendung, eine Watchdog-Anwendung und eine Update-Anwendung zum Aktualisieren der auf den Betriebssystemen laufenden Anwendungen.
Bevorzugt steuern die systemspezifischen Anwendungen, die auf dem dritten Betriebssystem ausgeführten werden, das erste und/oder zweite Betriebssystem.
Beispielsweise beinhalten die systemspezifischen Anwendungen, die auf dem dritten Betriebssystem ausgeführten werden, zur Steuerung des ersten und/oder zweiten Betriebssystems folgende Anwendungen:
(i) eine Watch-Dog-Anwendung, die das erste Betriebssystem und/oder das zweite Betriebssystem überwacht und in Abhängigkeit hiervon das erste und/oder zweite Betriebssystem selbst und/oder Anwendungen, die auf dem ersten oder zweiten Betriebssystem ausgeführt werden, verändern, beenden und/oder starten kann; und/oder
(ii) eine Schnittstellenanwendung, die die Datenkommunikation zwischen dem ersten und/oder zweiten Betriebssystem sowie der/den Einrichtung(en), und/oder zwischen dem ersten und/oder zweiten Betriebssystem sowie den Sensoren, und/oder
zwischen dem ersten und/oder zweiten Betriebssystem sowie der/den Eingabevorrichtung(en), und/oder
zwischen dem ersten und/oder zweiten Betriebssystem sowie dem Kommunikationsadapter, steuert;
(iii) eine Zugriffsrechteanwendung, die festlegt, auf welche Daten das erste und/oder zweite Betriebssystem Zugriff hat.
Bevorzugt ist die Schnittstellenanwendung eingerichtet, eine Authentifizierung des ersten und/oder zweiten Betriebssystems durchzuführen und die Datenkommunikation zu unterbinden, wenn die Authentifizierung fehlschlägt.
Hierdurch wird beispielsweise verhindert, dass das erste Betriebssystem und das zweite Betriebssystem durch einen Anwender„geroo- tet* werden können, indem gegenüber dem dritten Betriebssystem das Verhalten des ersten und zweiten Betriebssystems nur simuliert wird.
Weiterhin bevorzugt beinhaltet das Steuergerät eine Virtual isie- rungsschicht, bevorzugt einen Hypervisor, zumindest zwischen der Steuerungselektronik und einer ersten virtuellen Maschine, auf der das erste Betriebssystem läuft, und einer zweiten virtuellen Maschine, auf der das zweite Betriebssystem läuft, wobei
das dritte Betriebssystem zur Steuerung des ersten und/oder zweiten Betriebssystems dazu eingerichtet ist, die Virtualisierungs- schlcht zu steuern.
Ganz besonders bevorzugt befindet sich die Virtualisierungsschicht auch zwischen der Steuerungselektronik und einer dritten virtuellen Maschine, auf der das dritte Betriebssystem läuft, wobei das dritte Betriebssystem zur Steuerung des ersten und/oder zweiten Betriebssystems dazu eingerichtet ist, die Virtualisierungsschicht zu steuern. Die Steuerungselektronik beinhaltet beispielsweise eine CPU (zentrale Verarbeitungseinheit) mit einem einzigen Prozessorkern, wobei die Virtualisierungsschicht jeder virtuellen Maschine entsprechende Ressourcen zuordnet.
Die Steuerungselektronik beinhaltet bevorzugt allerdings eine CPU (zentrale Verarbeitungseinheit) mit einer Vielzahl von Prozessorkernen, wobei die Virtualisierungsschicht jeder virtuellen Maschine mindestens einen Prozessorkern zuordnet.
Besonders bevorzugt ist dem ersten Betriebssystem ein einziger Prozessorkern, dem zweiten Betriebssystem zwei Prozessorkerne und den dritten Betriebssystem wiederum ein einziger Prozessorkern zugeordnet.
Die Watch-Dog-Anwendung überwacht das erste Betriebssystem und/oder das zweite Betriebssystem, indem sie eine Auslastung des Prozessorkerns der ersten virtuellen Maschine und/oder der zweiten virtuellen Maschine uberwacht und in Abhängigkeit hiervon das erste und/oder zweite Betriebssystem selbst und/oder Anwendungen, die auf dem ersten und/oder zweiten Betriebssystem ausgeführt werden, verändert, beendet und/oder startet.
Bevorzugt steuert die Schnittstellenanwendung die Datenkommunikation, indem sie die Virtualisierungsschicht entsprechend steuert.
Das dritte Betriebssystem stellt weiterhin bevorzugt eine interne Schnittstelle für das erste und zweite Betriebssystem zur Verfügung, wobei die Schnittstellenanwendung so eingerichtet ist, dass zumindest die Datenkommunikation, die die Steuerungsdaten und sicherheitsrelevanten Daten beinhaltet, ausschließlich über die interne Schnittstelle erfolgt.
Die anderen Daten können auch über die interne Schnittstelle kommuniziert werden, wobei es allerdings auch alternativ möglich ist, dass diese Daten dem ersten und zweiten Betriebssystem direkt über- geben werden, das erste und zweite Betriebssystem diese allerdings erst nach Überprüfung durch das dritte Betriebssystem verarbeiten können.
Bevorzugt steuert die Schnittstellenanwendung die Datenkommunikation, indem sie die Virtualisierungsschicht derart steuert, dass Daten, die in einem Schnittstellenspeicher, der durch die Virtualisierungsschicht der ersten und/oder der zweiten virtuellen Maschine zugeordnet ist, vor Übergabe an das entsprechende Betriebssystem überprüft werden.
Letztendlich ordnet die Virtualisierungsschicht dem ersten Betriebssystem einen ersten virtuellen Framespeicher zur Speicherung der entsprechenden Informationsdaten und dem zweiten Betriebssystem einen zweiten virtuellen Framespeicher zur Speicherung der entsprechenden Informationsdaten zu, wobei die Virtualisierungsschicht die Informationsdaten aus dem ersten und zweiten Framespeicher vor Ausgabe an die Anzeigevorrichtung zur gemeinsamen Anzeige auf der Anzeigevorrichtung in einem dritten Framespeicher zusammenführt. Die Virtualisierungsschicht kann in diesem Zusammenhang über entsprechende Zwischenspeicher auch Signale für die Vorrichtungen zur Erzeugung des Audiofeedbacks und/oder des haptischen Feedbacks verarbeiten.
Im Folgenden wird eine bevorzugte Ausführungsform der Erfindung unter Bezug auf die beigefügte Figur erläutert, wobei die Figur ein schematisches Blockdiagramm des erfindungsgemäßen Steuergerätes zeigt.
Die beigefügte Figur zeigt ein erfindungsgemäßes Steuergerät 1, das für den Einbau in ein Fahrrad mit mindestens einer die Fahreigenschaften des Fahrrads beeinflussenden Einrichtung vorgesehen ist. Bei der erwähnten Einrichtung kann es sich beispielsweise um ein elektri- sches Antriebsaggregat handeln, das die Funktion einer elektrischen Antriebsunterstützung übernimmt, oder um eine elektrische Gangschaltung.
Das Steuergerät 1 weist eine Virtualisierungsschicht 2 auf, die die Steuerungselektronik (Hardware) bevorzugt drei virtuellen Maschinen zugeordnet.
Grundgedanke ist es, zwei oder mehrere Betriebssysteme mit verschiedenen Aufgabenschwerpunkten parallel auszuführen. In dieser bevorzugten Ausführungsform sind drei Betriebssysteme OS1, OS2, OS3 auf dem Steuergerät 1 installiert.
Dazu abstrahiert die Virtualisierungsschicht 2 (bevorzugt ein Hy- pervisor) die darunterliegende Hardware bzw. Steuerungselektronik (nicht gezeigt) zur Realisierung der mehreren virtuellen Maschinen, wobei jedes der Betriebssysteme auf einer der virtuellen Maschinen installiert ist.
Bevorzugt beinhaltet die Hardware bzw. Steuerungselektronik eine CPU mit mehreren Prozessorkernen, wobei der virtuellen Maschine für das Betriebssystem OS1 ein Prozessorkern, der virtuellen Maschine des Betriebssystems OS2 zwei Prozessorkerne und dem Betriebssystem OS3 wiederum ein Prozessorkern durch die Virtualisierungsschicht 2 zugeordnet wird.
Das Steuergerät 1 beinhaltet eine nicht gezeigte Schnittstelle, an die die zu steuernde Einrichtung (beispielsweise Antriebsunterstützung oder Gangschaltung) zur Eingabe/Ausgabe von Steuerungsdaten und/oder Überwachungsdaten angeschlossen wird.
In Abhängigkeit von dem benötigten Funktionsumfang können bevorzugt die einzelnen Betriebssysteme OS1 und OS3 oder die entsprechenden Prozessorkerne gestartet und beendet werden. Durch die Aufteilung der Funktionen auf mehrere Betriebssysteme wird die Robustheit aller gleichzeitig ausgeführten Anwendungen erhöht, das Herstellen ei- nes fahrbereiten Zustands beschleunigt und bevorzugt die Umsetzung gesetzlicher Anforderungen zugesichert.
Die über der Virtualisierungsschicht 2 installierten Betriebssysteme OS1, OS2, OS3 werden nach ihrem Anwendungsfokus unterschieden: a. OS1: Fahrradspezifische Anwendungen
- Anwendungen zur Steuerung und Überwachung der Einrichtung (bspw. elektrische Antriebsunterstützung, Gangschaltung, Überwachung der Batterie oder des Belastungs- und Betriebszustandes der elektrischen Antriebsunterstützung)
- Anwendungen, die sicherheitsrelevante Funktionen übernehmen (beispielsweise Messung der Geschwindigkeit, Reifendruckes, Verwaltung und Überprüfung der Lichtsysteme; entsprechende Anzeige von Fahrzeuginformationen wie Geschwindigkeit, Reifendruck, Fehlermeldungen) b. OS2: anwenderspezifische Anwendungen (Benutzerinstallierte Anwendungen wie APPs, Internetanwendungen, Navigationsanwendungen und dergleichen) c. OS3: systemspezifische Anwendungen (Updateanwendungen, Watch Dog-Anwendung, Schnittstellenanwendung zur Steuerung der Datenkommunikation zwischen Fahrzeug/Fahrrad und OS1 und OS2 oder weiteren OS)
Bevorzugt kann an die Schnittstelle zusätzlich noch angeschlossen werden: • ein oder mehrere Sensoren, die für die Steuerung und/oder Überwachung der Einrichtung(en) notwendige zusätzliche Steuerungsdaten/Überwachungsdaten liefern; und/oder
• ein oder mehrere Sensoren, die für die Übernahme der sicherheitsrelevanten Funktionen notwendige sicherheitsrelevante Daten liefern; und/oder
• ein oder mehrere Eingabevorrichtungen (bsp. Touch- Sensorsignal, Taster-Signal, etc.)/ über die der Anwender Steuerungsinstruktionen zur Steuerung der Einrichtung(en) eingeben kann, die an die Schnittstelle in Form von entsprechenden Befehlsdaten übergeben werden; und/oder
• ein oder mehrere Eingabevorrichtungen (bsp. Touch- Sensorsignal, Taster-Signal, etc.), über die der Anwender Einstellungsinstruktionen zur Einstellung der anwenderspezifischen Anwendungen eingeben kann, die an die Schnittstelle in Form von entsprechenden Einstellungsdaten übergeben werden; und/oder
• ein oder mehrere Kommunikationsadapter (z.B. GPS, Bluetooth, Wifi, GSM, etc.) zur Eingabe von Kommunikationssignaldaten, die für die Ausführung der anwenderspezifischen Anwendungen notwendige Kommunikationsdaten liefern; und/oder
• eine Datenübertragungseinrichtung zur Übertragung und Installation der anwenderspezifischen Anwendungen; und/oder
• eine oder mehrere Anzeigevorrichtungen zur Anzeige von Informationsdaten, die von dem ersten und/oder zweiten Betriebssystem ausgegeben werden.
Zumindest die Datenkommunikation, die die Steuerungsdaten/Überwachungsdaten und sicherheitsrelevanten Daten betreffen, erfolgt ausschließlich mittelbar über das Betriebssystem OS3. Das Betriebssystem (OS3) stellt den anderen Betriebssystemen (0S1, OS2) hierfür interne Schnittstellen zur Verfügung und führt eine entsprechende Schnittstellenanwendung zur Realisierung der Datenkommunikation aus.
Der Datenfluss der Datenkommunikation ist in der Figur mit den durchgezogenen Pfeilen dargestellt.
Der Datenfluss, der In der Figur mit gestrichelten Pfeilen dargestellt ist, betrifft in Bezug auf das erste Betriebssystem OS1 die Datenkommunikation der Befehlsdaten, die von einer Eingabevorrichtung erhalten werden, und in Bezug auf das zweite Betriebssystem OS2 die Einstellungsdaten, die ebenfalls von einer Eingabevorrichtung erhalten werden. In diesem Fall ist das Betriebssystem OS3 allerdings dazu eingerichtet, die Befehlsdaten und Einstellungsdaten vor Ausführung der entsprechenden Steuerungsinstruktionen bzw. Einstellungsinstruktionen zu überprüfen, ob deren Ausführung zulässig ist.
Bevorzugt erfolgt allerdings der gesamte Datenaustausch mittelbar über OS3, d.h. in der Figur entlang der durchgezogenen Pfeile. Zur Durchführung der Kommunikation ist das Betriebssystem OS3 bzw. die darauf ausgeführte Schnittstellenanwendung dazu eingerichtet, die Vir- tualisierungsschicht entsprechend zu steuern.
Darüber hinaus wird bevorzugt auf dem Betriebssystem OS3 noch eine Zugriffsrechteanwendung ausgeführt, die festlegt, auf welche Daten das erste und/oder zweite Betriebssystem Zugriff hat bzw. welche Daten an die Betriebssysteme OS1, OS2 übergeben werden dürfen.
Letztendlich ist auf dem Betriebssystem OS3 bevorzugt noch eine Watch-Dog-An wendung installiert, die das erste Betriebssystem
und/oder das zweite Betriebssystem überwacht und in Abhängigkeit hiervon das erste und/oder zweite Betriebssystem selbst und/oder Anwendungen, die auf dem ersten oder zweiten Betriebssystem ausgeführt werden, beenden und starten kann. Diese Watchdog-Anwendung wird bevorzugt im OS3 ausgeführt und überwacht die allgemeine Verfügbarkeit und Auslastung der anderen Betriebssysteme (OS1, OS2) sowie von einzelnen Anwendungen, die von diesen Betriebssystemen ausgeführt werden, z.B. die Anzeige von gesetzlich vorgeschriebenen Informationen: Aktuelle Geschwindigkeit oder die Kontrolllampe für das Fernlicht, etc. Die Watchdog-Anwendung kann bevorzugt den Hypervi- sor 2 veranlassen, die Ausführung einzelner Betriebssysteme zu beenden, diese neu zu starten oder über die interne Schnittstelle dem überwachten Betriebssystem mitteilen, ein bestimmtes Programm bzw. bestimmte Anwendung zu starten oder zu beenden.
Bezüglich der Ausgabe der Informationsdaten der Betriebssysteme werden die Inhalte mehrerer Bildspeicher (virtueller Framebuffer von OS1 und OS2) von dem Hypervisor 2 in einem einzelnen Bildspeicher zusammengeführt (beispielsweise physischer Framebuffer), der dann zur Anzeige auf dem Bildschirm der Anzeigevorrichtung gebracht wird.
In dieser Ausführungsform wird nur ein einzelner Prozessor bzw. eine einzelne CPU benötigt, das heißt, dass keine redundanten Speicher (RAM, Flash) oder Spannungsversorgungen (für CPU/Prozessor und Speicher) vorgehalten werden müssen. Das reduziert die Produktionskosten und macht derartige Multi-Betriebssystemlösungen auch in Märkten möglich, die starkem Kostendruck ausgesetzt sind (Fahrrad). Außerdem werden a) der erforderliche Leiterplatten-Bauraum und b) der Stromverbrauch gegenüber einer möglichen Realisierung basierend auf mehreren CPUs/Prozessoren reduziert.
Durch die Trennung der verschiedenen Betriebssysteme wird die Lauffähigkeit jedes einzelnen Betriebssystems sowie die der von dem Betriebssystem ausgeführten Anwendungen/Programmen erhöht, bzw. Ausfälle, die auf Abhängigkeiten zwischen Anwendungen/Programmen zurückzuführen sind, reduziert. Abhängigkeiten zwischen einer anwen- derspeziflschen Anwendung/Programm (z.B. Navigation) und einer Anwendung für eine Fahrradkomponente/Fahrzeugkomponente (z.B. Batterie) werden vermieden, weit keine Interaktion erfolgt und diese Teilkomponenten des Systems sich nicht gegenseitig korrumpieren. So überwacht z.B. der Software- Watch-Dog die Taktrate (in Hz) der von
051 und OS2 beanspruchten Prozessorkerne. Je höher die Last der CPU/des Prozessors ist, desto höher ist dessen Stromverbrauch. Ein abrupter Anstieg oder ein zu hoher Stromverbrauch könnte von der für die Spannungsversorgung des Fahrrads verantwortlichen Regeleinheit als ein möglicher Defekt (z.B. Kurzschluss) erkannt werden und dazu führen, dass die Elektronik des Fahrrades als Ganzes abgeschaltet wird und das Fahrrad somit unbrauchbar wird. Dieses kann durchaus zu gefährlichen Situationen führen (plötzlicher Verlust der elektrischen Antriebsunterstützung, Aussetzen normalerweise elektronisch getätigter Schaltvorgänge, Aussetzen von Fahrerassistenzsystemen bsp. ABS, etc.).
Die Watchdoganwendung erkennt und verhindert das Zustandekommen eines solchen Systemzustands, indem sie das verantwortliche Betriebssystem oder den jeweiligen Prozess rechtzeitig beendet und ggf. neustartet.
Je geringer der Funktionsumfang des Betriebssystems (z.B. hardwarenahe Kernel-Treiber), die Anzahl der zu ladenden Programmmodule (z.B. Bluetooth-Stack) oder die Komplexität eines User Interface (z.B. HTML), desto geringer ist deren Speicherverbrauch und desto schneller können Betriebssystem und Anwendungen aus Speicher (RAM und Flash) geladen und ausgeführt werden. Durch die Aufteilung der verschiedenen Funktionen auf die verschiedenen Betriebssysteme OS1 und
052 können sicherheitsrelevante Funktionen bereits kurz nach Systemstart (Kaltstart = Anlegen einer Spannung) bereitgestellt werden, ohne das Laden weniger wichtiger Treiber oder niederen Programmcodes ab- warten zu müssen, der für die Ausführung der systemrelevanten Funktionen nicht erforderlich ist.
So können z.B. die aktuelle Geschwindigkeit und die Kontrollleuchten innerhalb kurzer Zeit angezeigt werden, während das Laden und Ausführen komplexerer Funktionen längere Zeit in Anspruch nehmen kann (Navigationsanwendungen, Fitnessanwendungen, etc.).
In einer herkömmlichen Architektur mit nur einem Betriebssystem könnten der Fahrzeughersteller, der Händler oder der Endkunde die von dem Gesetzgeber geforderte Anzeige bestimmter Informationen manipulieren (Anzeige verdecken, Berechnung modifizieren, neuen Programmcode einspielen, etc.). Durch die Aufteilung der Anwendungen auf die beiden Betriebssysteme OS1 und OS2 sowie durch die Ausführung der Zugriffsrechteanwendung, d.h. der Erteilung von Zugriffsrechten, kann dies verhindert werden.
Das schnelle Herstellen eines für den jeweiligen Anwendungszweck sinnvollen Systemzustands ist auch ohne die Verwendung herkömmlicher Fastboot-Strategien möglich, bei denen ein bestimmter Betriebssystemzustand im flüchtigen Speicher (Flash-Memory) abgelegt und dazu der entsprechende Speicherbaustein mit Spannung versorgt werden muss. Dadurch kann die Kapazität einer etwaig integrierten Batterie deutlich reduziert werden.
Das Steuergerät 1 kann bevorzugt zum Zeitpunkt seiner Produktion bereits mit OS1, OS2 und OS3 programmiert werden, so dass in Abhängigkeit von der zum Zeitpunkt der Produktion des Fahrzeugs, zum Zeitpunkt des Verkaufs des Fahrzeugs durch den Händler oder nachträglich durch den Endkunden verbauten Anzeigevorrichtung das OS3 des Steuergerätes 1 entscheidet, welche Betriebssysteme (OS1, OS2) ausgeführt werden müssen, um die Anzeigevorrichtung korrekt ansteuern und mit Inhalten bespielen zu können. So bedarf ein reines LCD- Interface oder eine Kabelfernbedienung keine Ausgabe von Inhalten, die durch den Grafikprozessor berechnet werden. So können abhängig von dem letztendlichen Funktionsumfang nicht erforderliche Prozessorkerne deaktiviert werden, z.B. die Ausführung eines höherwertigen Betriebssystems vgl. Android als OS2. So reduziert sich der Stromverbrauch erheblich in Abhängigkeit von dem Funktionsumfang.
Die erfindungsgemäße Lösung geht bevorzugt davon aus, dass Hardwareressourcen geteilt werden, betrifft darüber hinaus aber sehr bevorzugt wie eine virtuelle Instanz (OS3), die andere virtuelle Instanzen kontrolliert (Watch-Oog) und diesen Instanzen (OS1, OS2) in Abhängigkeit von definierten Rechten Zugriff auf Daten und Befehle zur Verfügung stellt. Dazu kommunizieren OS1 und OS2 nur indirekt mit dem Fahrrad, stattdessen nutzen diese beiden Betriebssysteme nur Schnittstellen, die ihnen OS3 zur Verfügung stellt (Schnittstellenanwendung). OS3 ist das einzige Betriebssystem, das direkt - bzw. über das IPC - mit dem Bordnetz kommuniziert. Derart werden sicherheitskritische oder nach einem definierten Rechtemodell nur eingeschränkt sichtbar zu machende Daten und Funktionen einzig von OS3 als zentraler Instanz kontrolliert. Der bordnetzbezogene Befehls- und Datenfluss wird somit zunächst durch eine zentrale Instanz OS3 verarbeitet/ gefiltert.
Die zentrale Instanz OS3 erkennt anhand von in regelmäßigen Abständen ausgeführten Anfragen/ Proben, ob die anderen Instanzen (OS1 und OS2) dem von OS3 geforderten Betriebszustand entsprechen. Stellt OS3 einen Betriebszustand fest, der eine Aktion erfordert (z.B. OS2 ist eingefroren, weil eine Navigationsanwendung nicht mehr auf Benutzereingaben reagiert), kann OS3 die Virtualisierungsschicht anweisen, gemeinsame Ressourcen (Ein- und Ausgabe) dem beprobten Betriebssystem in eingeschränktem Umfang oder überhaupt nicht mehr zur Verfügung zu stellen (z.B. kann die Anzeige von OS1 den vollen Bildschirm einnehmen, wenn OS3 feststellt, dass OS2 nicht mehr auf Bildschirmeingaben reagiert). So kann OS3 die Virtualisierungsschicht anweisen, während des Boot-Vorgangs, den Bildschirminhalt von OS1 bildschirmfüllend anzuzeigen und erst nach erfolgtem, vollständigem Boot von OS2 eine Bildschirmanordnung zu verwenden, bei der OS1 und OS2 gleichzeitig dargestellt werden.

Claims

Patentansprüche
1. Steuergerät für ein Fahrrad mit mindestens einer die Fahreigenschaften des Fahrrades beeinflussenden Einrichtung, wobei
das Steuergerät eine Steuerungselektronik aufweist, die dazu eingerichtet ist,
ein erstes Betriebssystem (0S1) und ein zweites Betriebssystem (OS2) parallel auszuführen, wobei
auf dem ersten Betriebssystem (OS1) bei bestimmungsgemäßem Betrieb des Steuergerätes zumindest eine Anwendung zur Steuerung und/oder Überwachung der die Fahreigenschaften des Fahrrades beeinflussenden Einrichtung ausgeführt wird, und
auf dem zweiten Betriebssystem (OS2) bei bestimmungsgemäßem Betrieb des Steuergerätes anwenderspezifische Anwendungen ausgeführt werden.
2. Steuergerät gemäß Patentanspruch 1, wobei
auf dem ersten Betriebssystem (OS1) bei bestimmungsgemäßem Betrieb des Steuergerätes mehrere Anwendungen, die jeweils zur Steuerung und/oder Überwachung einer von einer Vielzahl die Fahreigenschaften des Fahrrades beeinflussenden Einrichtungen ausgeführt werden.
3. Steuergerät gemäß Patentanspruch 1 oder 2, wobei auf dem ersten Betriebssystem (OS1) bei bestimmungsgemäßem Betrieb des Steuergerätes zusätzlich eine oder mehrere Anwendungen, die sicherheitsrelevante Funktionen übernehmen, ausgeführt werden.
4. Steuergerät gemäß Patentanspruch 1, 2 oder 3, wobei das Steuergerät eine Schnittsteile aufweist, an die die Einrichtungen) zur Eingabe/Ausgabe von Steuerungsdaten und/oder Überwachungsdaten anschließbar ist(sind).
5. Steuergerät gemäß Patentanspruch 4, wobei
an die Schnittsteile
• ein oder mehrere Sensoren, die für die Steuerung und/oder Überwachung der Einrichtung(en) notwendige zusätzliche Steuerungsdaten/Überwachungsdaten liefern; und/oder
• ein oder mehrere Sensoren, die für die Übernahme der sicherheitsrelevanten Funktionen notwendige sicherheitsrelevante Daten liefern; und/oder
• ein oder mehrere Eingabevorrichtungen, über die der Anwender Steuerungsinstruktionen zur Steuerung der Einrichtungen) eingeben kann, die an die Schnittstelle in Form von entsprechenden Befehlsdaten übergeben werden; und/oder
• ein oder mehrere Kommunikationsadapter zur Eingabe von Kommunikationssignaldaten, die für die Ausführung der anwenderspezifischen Anwendungen notwendige Kommunikationsdaten liefern; und/oder
• ein oder mehrere Eingabe Vorrichtungen, über die der Anwender Einstellungsinstruktionen zur Einstellung der anwenderspezifischen Anwendungen eingeben kann, die an die Schnittstelle in Form von entsprechenden Einsteliungsdaten übergeben werden; und/oder
• eine Datenübertragungseinrichtung zur Übertragung und Installation der anwenderspezifischen Anwendungen; und/oder • eine oder mehrere Anzeigevorrichtungen zur Anzeige von Informationsdaten, die von dem ersten und/oder zweiten Betriebssystem ausgegeben werden;
anschließbar sind.
6. Steuergerät gemäß einem der Patentansprüche 1 bis 5, wobei
die Steuerungselektronik dazu eingerichtet ist, ein drittes Betriebssystem (OS3) auszuführen, auf dem systemspezifische Anwendungen ausgeführt werden.
7. Steuergerät gemäß Patentanspruch 6, wobei
die systemspezifischen Anwendungen, die auf dem dritten Betriebssystem ausgefüht werden, das erste und/oder zweite Betriebssystem steuern.
8. Steuergerät gemäß Patentanspruch 7, wobei
die systemspezifischen Anwendungen, die auf dem dritten Betriebssystem ausgeführt werden, zur Steuerung des ersten und/oder zweiten Betriebssystems beinhalten:
(i) eine Watch-Dog-Anwendung, die das erste Betriebssystem und/oder das zweite Betriebssystem überwacht und in Abhängigkeit hiervon das erste und/oder zweite Betriebssystem selbst und/oder Anwendungen, die auf dem ersten oder zweiten Betriebssystem ausgeführt werden, beenden und starten kann; und/oder
(ii) eine Schnittstellenanwendung, die die Datenkommunikation zwischen dem ersten und/oder zweiten Betriebssystem sowie der/den Einrichtung(en), und/oder
zwischen dem ersten und/oder zweiten Betriebssystem sowie den Sensoren, und/oder zwischen dem ersten und/oder zweiten Betriebssystem sowie der/den Eingabevorrichtung(en), und/oder
zwischen dem ersten und/oder zweiten Betriebssystem sowie dem Kommunikationsadapter, steuert;
(iii) eine Zugriffsrechteanwendung, die festlegt, auf weiche Daten das erste und/oder zweite Betriebssystem Zugriff hat.
10. Steuergerät gemäß Patentanspruch 9, wobei
die Schnittstellenfunktionsanwendung eingerichtet ist, eine Authentifizierung des ersten und/oder zweiten Betriebssystems durchzuführen und die Datenkommunikation zu unterbinden, wenn die Authentifizierung fehlschlägt.
11. Steuergerät gemäß einem der Patentansprüche 6 bis 10, wobei das Steuergerät eine Virtualisierungsschicht, bevorzugt einen Hy- pervisor, zumindest zwischen der Steuerungselektronik und einer ersten virtuellen Maschine, auf der das erste Betriebssystem läuft, und einer zweiten virtuellen Maschine, auf der das zweite Betriebssystem läuft, aufweist, wobei
das dritte Betriebssystem zur Steuerung des ersten und/oder zweiten Betriebssystems dazu eingerichtet ist, die Virtualisierungsschicht zu steuern.
12. Steuergerät gemäß Patentanspruch 11, wobei die Virtualisierungsschicht sich auch zwischen der Steuerungselektronik und einer dritten virtuellen Maschine, auf der das dritte Betriebssystem läuft, befindet, und das dritte Betriebssystem zur Steuerung des ersten und/oder zweiten Betriebssystems dazu eingerichtet ist, die Virtualisierungsschicht zu steuern.
13. Steuergerät gemäß Patentanspruch 11 oder 12, wobei die Steuerungselektronik eine CPU mit einer Vielzahl von Prozessorkemen aufweist und die Virtualisierungsschicht jeder virtuellen Maschine mindestens einen Prozessorkern zuordnet.
14. Steuergerät gemäß Patentanspruch 13, wobei
die Watch-Dog-Anwendung das erste Betriebssystem und/oder das zweite Betriebssystem überwacht, indem sie eine Auslastung des Prozessorkerns der ersten virtuellen Maschine und/oder der zweiten virtuellen Maschine überwacht und in Abhängigkeit hiervon das erste und/oder zweite Betriebssystem selbst und/oder Anwendungen, die auf dem ersten und/oder zweiten Betriebssystem ausgeführt werden, beendet und startet.
15. Steuergerät gemäß einem der Patentansprüche 11 bis 14, wobei die Schnittstellenanwendung die Datenkommunikation steuert, indem sie die Virtualisierungsschicht entsprechend steuert.
16. Steuergerät gemäß Patentanspruch 15, wobei das dritte Betriebssystem eine interne Schnittstelle für das erste und zweite Betriebssystem zur Verfügung stellt und die Schnittstellenanwendung so eingerichtet ist, dass zumindest die Datenkommunikation, die die Steuerungsdaten und sicherheitsrelevanten Daten beinhaltet, ausschließlich über die interne Schnittstelle erfolgt.
17. Steuergerät gemäß Patentanspruch 15 oder 16, wobei die Schnittstellenanwendung die Datenkommunikation steuert, indem sie die Virtualisierungsschicht derart steuert, dass Daten, die in einem Schnittstellenspeicher, der durch die Virtualisierungsschicht der ersten und/oder der zweiten virtuellen Maschine zugeordnet ist, vor Übergabe an das entsprechende Betriebssystem überprüft werden.
18. Steuergerät gemäß einem der Patentansprüche 11 bis 17, wobei
die Virtualisierungsschicht dem ersten Betriebssystem einen ersten virtuellen Framespeicher zur Speicherung der entsprechenden Informationsdaten und dem zweiten Betriebssystem einen zweiten virtuellen Framespeicher zur Speicherung der entsprechenden Informationsdaten zuordnet; und
die Virtualisierungsschicht die Informationsdaten aus dem ersten und zweiten Framespeicher vor Ausgabe an die Anzeigevorrichtung zur gemeinsamen Anzeige auf der Anzeigevorrichtung in einem dritten Framespeicher zusammenführt.
EP16769873.7A 2015-08-26 2016-08-26 Steuergerät für ein fahrrad Withdrawn EP3341277A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102015216346 2015-08-26
PCT/EP2016/070227 WO2017032890A1 (de) 2015-08-26 2016-08-26 Steuergerät für ein fahrrad

Publications (1)

Publication Number Publication Date
EP3341277A1 true EP3341277A1 (de) 2018-07-04

Family

ID=56979513

Family Applications (1)

Application Number Title Priority Date Filing Date
EP16769873.7A Withdrawn EP3341277A1 (de) 2015-08-26 2016-08-26 Steuergerät für ein fahrrad

Country Status (4)

Country Link
US (1) US20180354581A1 (de)
EP (1) EP3341277A1 (de)
CN (1) CN108367796A (de)
WO (1) WO2017032890A1 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4113287B1 (de) * 2015-09-14 2024-03-06 Panasonic Intellectual Property Corporation of America Gateway-vorrichtung, netzwerksystem in einem fahrzeug und firmware-aktualisierungsverfahren
DE102018001883A1 (de) 2018-03-08 2019-09-12 Sigma Elektro Gmbh Vorrichtung zum Einstellen der Unterstützungsstufen eines Antriebssystems eines Elektrofahrzeugs
CN111367185A (zh) * 2018-12-26 2020-07-03 博西华电器(江苏)有限公司 家电控制***、家电控制方法、存储介质及家电
JP7259571B2 (ja) * 2019-06-11 2023-04-18 株式会社デンソー 車両用制御装置、車両用表示システム、及び車両用表示制御方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004038722A (ja) * 2002-07-05 2004-02-05 Sunstar Eng Inc 電動アシスト自転車提供のサーバシステム
US8482390B2 (en) * 2006-11-03 2013-07-09 Nokia Corporation Remote control of apparatus with media player
US9081596B2 (en) * 2010-03-16 2015-07-14 Panasonic Intellectual Property Management Co., Ltd. Information processing device, virtual machine creation method, and application distribution system
CN201863985U (zh) * 2010-03-23 2011-06-15 武汉若比特机器人有限公司 一种双电机备份驱动重心控制车辆
US8818725B2 (en) * 2011-11-16 2014-08-26 Flextronics Ap, Llc Location information exchange between vehicle and device
EP2622462A4 (de) * 2010-10-01 2014-01-29 Z124 Mehrfachbetriebssystem
US20140309873A1 (en) * 2013-04-15 2014-10-16 Flextronics Ap, Llc Positional based movements and accessibility of features associated with a vehicle
WO2014047341A1 (en) * 2012-09-21 2014-03-27 Civilized Cycles Incorporated Versatile electric bicycle systems
JP6507169B2 (ja) * 2014-01-06 2019-04-24 ジョンソン コントロールズ テクノロジー カンパニーJohnson Controls Technology Company 複数のユーザインターフェース動作ドメインを有する車両
JP2015131533A (ja) * 2014-01-10 2015-07-23 株式会社シマノ 情報収集システム、情報処理システム、情報表示装置、およびコンピュータプログラム
US10933949B2 (en) * 2014-11-27 2021-03-02 Shimano Inc. Bicycle operating apparatus and bicycle operating system
US10169061B2 (en) * 2015-05-06 2019-01-01 Ford Global Technologies, Llc Scalable and flexible operating system platform

Also Published As

Publication number Publication date
US20180354581A1 (en) 2018-12-13
CN108367796A (zh) 2018-08-03
WO2017032890A1 (de) 2017-03-02

Similar Documents

Publication Publication Date Title
EP3341277A1 (de) Steuergerät für ein fahrrad
DE102017101479A1 (de) Autonomes fahrzeug mit modularer steuerschnittstelle
CN101681286A (zh) 多处理器***及其控制方法
DE112013002254T5 (de) Wiederherstellen aus einer Altbetriebssystemumgebung zu einer UEFI-Preboot-Umgebung
EP3001313A1 (de) Verfahren zur Simulation eines Anwendungsprogramms eines elektronischen Steuergeräts auf einem Computer
DE102015003194A1 (de) Verfahren und Vorrichtung zum Handhaben von sicherheitskritischen Fehlern
DE102012205301A1 (de) Rechner-Architektur zur Steuerung einer elektronischen Datenverarbeitung in einem Fahrzeug
DE102020102232A1 (de) Verbessern der diagnostikfähigkeiten von datenverarbeitungssystemen durch kombinieren von variablenpatrouillierungs-api und vergleichsmechanismus von variablen
DE112016001377B4 (de) Fahrzeugbordsystem
US20180018189A1 (en) Platform simulation for management controller development projects
US10169061B2 (en) Scalable and flexible operating system platform
DE112010005557T5 (de) Fehlerprüfgerät und Fehlerprüfverfahren
DE112010004037T5 (de) Simulationsverfahren, -system und -programm
KR20220085366A (ko) 차량용 제어기 및 그것의 운영체제 스케쥴링 방법
DE112013007676T5 (de) Informationsvorrichtung
JPH0565813B2 (de)
DE112013005865T5 (de) Datenverarbeitungsvorrichtung
EP2793196B1 (de) Tachograph und on-board-einheit für ein nutzkraftfahrzeug
US20220080983A1 (en) Vehicle device
DE102022110251A1 (de) Ota-master, center, system, verfahren, nicht-transitorisches speichermedium und fahrzeug
DE202016008498U1 (de) Steuergerät für ein Fahrzeug
DE102012217328A1 (de) Verfahren zum Simulieren eines Steuergeräts
DE102017219195B4 (de) Verfahren zum gewährleisten eines betriebs eines rechners
DE102020204043A1 (de) Bordnetz mit einem Prozessorverbund für ein Fahrzeug
DE102007015507A1 (de) Prozessor mit einem ersten und einem zweiten Betriebsmodus und Verfahren zu seinem Betrieb

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20180326

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
19U Interruption of proceedings before grant

Effective date: 20181207

19W Proceedings resumed before grant after interruption of proceedings

Effective date: 20221102

PUAJ Public notification under rule 129 epc

Free format text: ORIGINAL CODE: 0009425

32PN Public notification

Free format text: FESTSTELLUNG EINES RECHTSVERLUSTS NACH REGEL 112(1) EPUE (EPA FORM 2524 VOM 04/07/2023)

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20230503