DE102006008634A1 - Microcontroller system, has data collecting unit arranged to store data provided by peripheral units and representing operating variables of peripheral units in appropriation to value of functional reference variables - Google Patents

Microcontroller system, has data collecting unit arranged to store data provided by peripheral units and representing operating variables of peripheral units in appropriation to value of functional reference variables Download PDF

Info

Publication number
DE102006008634A1
DE102006008634A1 DE102006008634A DE102006008634A DE102006008634A1 DE 102006008634 A1 DE102006008634 A1 DE 102006008634A1 DE 102006008634 A DE102006008634 A DE 102006008634A DE 102006008634 A DE102006008634 A DE 102006008634A DE 102006008634 A1 DE102006008634 A1 DE 102006008634A1
Authority
DE
Germany
Prior art keywords
values
peripheral units
value
expiration
unit
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
DE102006008634A
Other languages
German (de)
Inventor
Udo Schulz
Stefan Polach
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102006008634A priority Critical patent/DE102006008634A1/en
Priority to PCT/EP2006/069675 priority patent/WO2007074069A1/en
Publication of DE102006008634A1 publication Critical patent/DE102006008634A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0423Input/output
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23117Lookup table, interpolation between points
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25472Synchronise controllers, sensors, measurement with data bus
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/26Pc applications
    • G05B2219/2623Combustion motor

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Abstract

The system has an execution unit (1) and a set of peripheral units (4), which provide data to be processed by the execution unit. A signal generator unit is arranged to provide a functional reference signal synchronously to the peripheral units. A data collecting unit (3) is arranged to store the data provided by the peripheral units and representing operating variables of the peripheral units in appropriation to a value of functional reference variables. The reference variables are represented by the functional reference signal. An independent claim is also included for a method for providing consistent values of different operating variables in a microcontroller system.

Description

Stand der TechnikState of technology

Die vorliegende Erfindung betrifft ein Mikrocontrollersystem mit einer Ausführungseinheit zum Ausführen von Programmbefehlen und einer Mehrzahl von Peripherieeinheiten, welche von der Ausführungseinheit zu verarbeitende Daten liefern. Derartige Daten betreffen insbesondere Betriebsgrößen einer von dem Mikrocontrollersystem gesteuerten Maschine.The The present invention relates to a microcontroller system having a execution unit to run program instructions and a plurality of peripheral units, which of the execution unit provide data to process. Such data concerns in particular Operating variables of a machine controlled by the microcontroller system.

Wenn eine solche Maschine unter Berücksichtigung mehrerer veränderlicher Betriebsgrößen gesteuert werden muss, ergibt sich das Problem, dass Messwerte dieser Betriebsgrößen, auf denen die Steuerung basiert, in Bezug auf eine Ablaufreferenzgröße wie etwa die Zeit konsistent sein müssen. Das heißt, die Messwerte, die in der Ausführungseinheit miteinander verknüpft werden, müssen auf einen gleichen Wert der Ablaufreferenzgröße, zum Beispiel also auf einen gleichen Zeitpunkt, bezogen sein. Sind sie dies nicht, können Steuerungsfehler auftreten, die um so gravierender sind, je schneller die Betriebsgrößen veränderlich sind bzw. je größer die Abweichung zwischen den Zeitpunkten ist, auf die die Messwerte sich beziehen.If such a machine under consideration several mutable Operating variables controlled must be, the problem arises that measured values of these operating variables, on which the controller is based on, in terms of an expiration reference such as the time must be consistent. The is called, the metrics that are in the execution unit linked together Need to become to an equal value of the expiration reference size, for example to one same time, be related. If they are not, control errors can occur occur, the more serious the faster the operating variables are variable are or the bigger the Deviation between the times is to which the readings themselves Respectively.

Wenn folglich die Ausführungseinheit eines Mikrocontrollersystems im Laufe der Abarbeitung eines Programm sukzessive die Werte von Betriebsgrößen von verschiedenen Peripherieeinheiten abfragt und die Peripherieeinheiten erst durch die Abfrage veranlasst werden, diese Messwerte zu erzeugen, so stellen diese nacheinander gewonnenen Messwerte notwendigerweise die Betriebsgrößen zu jeweils unterschiedlichen Zeitpunkten dar. Ein Satz von Betriebsgrößen, der den Zustand der Maschine zu einem gegebenen Zeitpunkt vollständig beschreibt, liegt nicht vor, so dass in Unkenntnis eines solchen Zustandes eine optimale Steuerung der Maschine kaum zu gewährleisten ist.If consequently the execution unit a microcontroller system during the execution of a program successively the values of operating variables of different peripheral units queries and causes the peripheral units only by the query be to generate these readings, so put these in succession measured values necessarily the operating variables to each different time points. A set of operating variables, the fully describes the state of the machine at a given time, is not present, so that in ignorance of such a condition a optimal control of the machine is difficult to ensure.

Dies macht sich insbesondere bei der Steuerung von Verbrennungsmotoren nachteilig bemerkbar. Herkömmliche Motorsteuergeräte sind zwar in der Lage, einen Verbrennungsmotor bei stationär oder langsam veränderter Last so zu steuern, dass befriedigende Verbrauchs- und Abgaswerte erreicht werden; bei Lastwechseln, wie sie in modernen Testverfahren für die Zulassungsprüfung von Verbrennungsmotoren, insbesondere für den Kfz-Bau, vorkommen, kommt es zu erheblichen Beeinträchtigungen der Verbrauchs- und Abgaswerte.This Especially in the control of internal combustion engines disadvantageous noticeable. conventional Engine control units Although capable of running a stationary or slow combustion engine modified To control load so that satisfactory consumption and emission levels be achieved; during load changes, as in modern test procedures for the admission test of internal combustion engines, especially for motor vehicle construction, occur, comes it causes considerable damage the consumption and Emissions.

Es wäre zwar denkbar, eine Ausführungseinheit mit hoher Verarbeitungsgeschwindigkeit zu wählen, um dadurch die jeweils zwischen den Abfragen von Messwerten durch die Ausführungseinheit verstreichende Zeit zu verringern, doch ist dies mit erheblichen Kosten verbunden und löst das Problem allenfalls zum Teil, da die Verarbeitungsgeschwindigkeit der Ausführungseinheit keinen Einfluss auf die Zeit hat, die die Peripherieeinheiten benötigen, um auf eine Anforderung der Ausführungseinheit einen Messwert zu erzeugen und zurückzuliefern.It would be though conceivable, an execution unit to select with high processing speed to thereby each between queries of metrics by the execution unit lessening time, but this is considerable Costs connected and solved the problem at best partly because of the processing speed the execution unit does not affect the time that the peripherals need to turn on a request of the execution unit to generate and return a measured value.

Es besteht daher Bedarf nach einem Mikrocontrollersystem, das geeignet ist, Vorgänge mit zeitlich veränderlichen Betriebsgrößen mit hoher Zeitauflösung zu steuern, ohne hierfür eine extrem hohe Verarbeitungsgeschwindigkeit der Ausführungseinheit oder extrem kurze Reaktionszeiten der Peripherieeinheiten zu erfordern.It There is therefore a need for a microcontroller system that is suitable is, operations with temporally variable Company sizes with high time resolution to steer without this an extremely high processing speed of the execution unit or to require extremely short reaction times of the peripheral units.

Offenbarung der Erfindungepiphany the invention

Dieses Ziel wird erfindungsgemäß erreicht durch ein Mikrocontrollersystem mit einer Ausführungseinheit und einer Mehrzahl von Peripherieeinheiten, welche von der Ausführungseinheit zu verarbeitende Daten liefern, welches ferner eine Zeitgebereinheit, die eingerichtet ist, ein Ablaufreferenzsignal synchron an die Peripherieeinheiten zu liefern, und eine Datensammeleinheit umfasst, die eingerichtet ist, um von den Peripherieeinheiten gelieferte, Betriebsgrößen der Peripherieeinheiten repräsentierende Daten jeweils in Zuordnung zu einem Weit einer von dem Auflaufreferenzsignal repräsentierten Ablaufreferenzgröße zu speichern. Dies ermöglicht es der Ausführungseinheit, benötigte Werte der Betriebsgrößen von der Sammeleinheit abzufragen, wo diese mit geringerer Verzögerung verfügbar sind als bei Anforderung an den Peripherieeinheiten selbst. Da die Werte der Betriebsgrößen in der Sammeleinheit jeweils in Zuordnung zu einem Wert der Ablaufreferenzgröße vorliegen, ist es möglich, eine eventuelle Veränderung der Betriebsgrößen zwischen dem Zeitpunkt der Messwerterzeugung und einem Zeitpunkt, auf den sich die von der Ausführungseinheit durchgeführte Verarbeitung bezieht, zu berücksichtigen.This Target is achieved by a microcontroller system having an execution unit and a plurality peripheral units to be processed by the execution unit Provide data which further comprises a timer unit which is set up is an expiration reference signal synchronous to the peripheral units and includes a data collection unit that is set up, supplied by the peripheral units, operating variables of the Representing peripheral units Data each in association with a far one of the casserole reference signal represented Save execution reference size. this makes possible it's the execution unit, needed Values of the operating variables of poll the collection unit where it will be available with less delay as at request to the peripheral units themselves. Since the values of farm sizes in the Collecting unit are in each case assigned to a value of the execution reference variable, Is it possible, a possible change the company sizes between the date of the measurement and a time at which the processing performed by the execution unit refers to take into account.

Die Ablaufreferenzgröße kann insbesondere die Zeit sein.The Expiration reference size can especially the time.

Bei einem Mikrocontrollersystem, das einen wiederkehrenden Vorgang steuert, wie etwa die Verbrennung in einem Verbrennungsmotor, kann als Ablaufreferenzgröße auch ein Drehwinkel, zum Beispiel der Drehwinkel der Kurbelwelle, herangezogen werden.at a microcontroller system that controls a recurring process, such as combustion in an internal combustion engine, can also be used as a flow reference variable a rotation angle, for example, the angle of rotation of the crankshaft, used become.

Die Peripherieeinheiten sind vorzugsweise durch das Ablaufreferenzsignal anregbar, einen Messwert einer Betriebsgröße zu erzeugen, ohne dass hierfür ein Tätigwerden der Ausführungseinheit erforderlich ist.The Peripheral units are preferably by the expiration reference signal stimulable to generate a measured value of a farm size without action to do so the execution unit required is.

Das Ablaufreferenzsignal kann die Ablaufreferenzgröße quantitativ repräsentieren, zum Beispiel durch periodisches Übertragen eines den Zahlenwert der Ablaufreferenzgröße bezeichnenden digitales Wertes.The Expiration reference signal may represent the expiration reference quantity quantitatively, for example, by periodic transmission a digital value indicative of the numerical value of the expiration reference variable.

Alternativ kann das Ablaufreferenzsignal auch Inkremente der Ablaufreferenzgröße repräsentieren. Dies verringert die zur Übertragung des Ablaufreferenzsignals an die Peripherieeinheiten erforderliche Bandbreite, macht allerdings, sofern nicht die Zeitabstände zwischen zwei Inkrementen lang im Vergleich zur Reaktionszeit der Peripherieeinheiten ist und jedes Inkrement eine Erfassung der Betriebsgrößen auslösen soll, auf Seiten der Peripherieeinheiten Schaltungen zum Errechnen der Ablaufreferenzgröße anhand der übertragenen Inkremente erforderlich.alternative For example, the expiration reference signal may also represent increments of the expiration reference size. This reduces the transmission the drain reference signal to the peripheral units required Bandwidth, though, unless the time intervals between is two increments compared to the peripheral device reaction time and each increment should trigger a recording of the operating variables, on the side of the peripheral units circuits for calculating the Expiration reference size based on the transmitted Increments required.

Vorzugsweise umfasst die Datensammeleinheit eine Dateninterpolationseinheit zum Abschätzen des Wertes, den eine Betriebsgröße einer Peripherieeinheit bei einem gegebenen Wert der Ablaufreferenzgröße hat, anhand von in Zuordnung zu diesem gegebenen Wert benachbarten Werten der Ablaufreferenzgröße gespeicherten Werten der Betriebsgröße. Dadurch wird die Möglichkeit geschaffen, der Ausführungseinheit wenigstens einen Schätzwert jeder Betriebsgröße zu einem beliebigen Wert der Ablaufreferenzgröße zu liefern. Das heißt, es kann ein vollständiger Satz von Betriebsgrößen zu einem gegebenen Wert der Ablaufreferenzgröße bereitgestellt werden, selbst wenn nicht alle Betriebsgrößen zu diesem Wert der Ablaufreferenzgröße gemessen worden sind. Es ist unmittelbar einleuchtend, dass auf diese Weise eine hochgenaue Steuerung realisierbar ist.Preferably the data collection unit comprises a data interpolation unit for Estimating the Value that a company size of a Has peripheral unit at a given value of expiration reference, based on values adjacent to this given value stored the expiration reference size Values of the farm size. Thereby becomes the possibility created, the execution unit at least one estimate each company size to one deliver any value of the expiration reference size. That means it can a complete one Set of farm sizes to one given value of the expiration reference size itself if not all farm sizes for this Value of the expiration reference measured have been. It is immediately obvious that in this way a highly accurate control is feasible.

Die Interpolationseinheit kann eine Interpolation im engeren Sinne, das heißt mit Stützpunkten bei jeweils wenigstens einem Wert der Ablaufreferenzgröße, der kleiner als der gegebene Wert ist, und wenigstens einem Wert der Ablaufreferenzgröße, der größer als der gegebene Wert ist, sein; es kommt aber auch eine Extrapolation, das heißt eine Abschätzung basierend auf Stützpunkten für Werte der Ablaufreferenzgröße, die sämtlich kleiner als der gegebene Wert sind, in Betracht.The Interpolation unit can be an interpolation in the strict sense, this means with bases in each case at least one value of the expiration reference variable, the is less than the given value, and at least one value of Expiration reference greater than the given value is to be; but there is also an extrapolation this means an estimate based on bases for values the expiration reference size, the all smaller than the given value are considered.

Die Datensammeleinheit umfasst vorzugsweise eine Speichermatrix mit Zeilen und Spalten, wobei Werte einer gleichen Betriebsgröße einer gleichen Peripherieeinheit in einer gleichen Zeile gespeichert sind und einem gleichen Wert der Ablaufreferenzgröße entsprechende Werte der Betriebsgrößen in einer gleichen Spalte gespeichert sind.The Data collection unit preferably comprises a memory matrix with Rows and columns, where values of a same operation size of a same peripheral unit are stored in a same row and an equal value of the expiration reference corresponding values of Farm sizes in one same column are stored.

Das erfindungsgemäße Mikrocontrollersystem kann insbesondere Teil eines Motorsteuergerätes sein.The inventive microcontroller system may in particular be part of an engine control unit.

Das Ziel der Erfindung wird ferner erreicht durch ein Verfahren zum Bereitstellen von konsistenten Werten verschiedener Betriebsgrößen in einem Mikrocontrollersystem, insbesondere einem Mikrocontrollersystem wie oben definiert, mit den Schritten:

  • a) Erfassen von jeweils einem gleichen Wert einer Ablaufreferenzgröße entsprechenden Werten von Betriebsgrößen mehrerer Peripherieeinheiten, und
  • b) Zusammenfassen der in Schritt a) erfassten Werte der Betriebsgrößen in einem Datensatz.
The object of the invention is further achieved by a method for providing consistent values of different operating variables in a microcontroller system, in particular a microcontroller system as defined above, with the steps:
  • a) detecting respective values of operating variables of a plurality of peripheral units corresponding to an equal value of a sequence reference variable, and
  • b) summarizing the values of the operating variables acquired in step a) in a data record.

Ein in dem Datensatz fehlender Wert wenigstens einer Betriebsgröße kann ergänzt werden durch Berechnen anhand von wenigstens zwei Werten derselben Betriebsgröße, die in anderen Werten der Ablaufreferenzgröße zugeordneten Datensätzen enthalten sind. Diese Berechnung kann zur Zeit der Erzeugung des Datensatzes stattfinden, so dass der ergänzte Wert sofort verfügbar ist, wenn auf den Datensatz zugegriffen wird; sie kann aber auch erst erfolgen, falls und wenn auf den Datensatz zugegriffen wird.One in the record missing value of at least one operating variable can added are calculated by calculating from at least two values of the same Company size, the Contain records associated with the expiration reference in other values are. This calculation may be at the time of generation of the record take place so that the supplemented Value immediately available is when the record is accessed; but she can too only if and when the record is accessed.

Entsprechend kann auch ein Datensatz zu einem vorgegebenen Wert der Ablaufreferenzgröße komplett neu erzeugt werden, indem für jede Betriebsgröße des Datensatzes ein Wert anhand von wenigstens zwei Werten derselben Betriebsgröße berechnet wird, die in anderen Werten der Ablaufreferenzgröße zugeordneten Datensätzen enthalten sind.Corresponding can also complete a record to a predetermined value of the expiration reference size be regenerated by for every operating size of the data record calculates a value based on at least two values of the same farm size contained in other values of the expiration reference.

Dabei kann in Schritt a) ein Triggersignal als ein Ablaufreferenzsignal an die Peripherieeinheiten gesendet werden, wenn die Ablaufreferenzgröße einen gegebenen Wert erreicht, und die Betriebsgrößen werden jeweils an Peripherieeinheiten gemessen, wenn dort das Triggersignal empfangen wird. Ein solches Verfahren hat den Vorteil der Einfachheit, berücksichtigt aber nicht ohne Weiteres unterschiedliche Reaktionszeiten verschiedener Peripherieeinheiten auf das Triggersignal. Außerdem sollte der Zeitabstand zwischen zwei Triggersignalen bei diesem Verfahren deutlich länger sein als die Reaktionszeit der Peripherieeinheiten, damit alle auf ein erstes Triggersignal hin erzeugten Messwerte vorliegen, bevor ein zweites Triggersignal erzeugt wird, und keine Schwierigkeiten bei der Zuordnung der erfassten Werte zu den Datensätzen bzw. Triggersignalen entstehen.there For example, in step a), a trigger signal may be used as a trace reference signal sent to the peripheral units when the expiration reference size is one given value, and the operating variables are each to peripheral units measured when the trigger signal is received there. Such Method has the advantage of simplicity, but does not take into account without Further different reaction times of different peripheral units on the trigger signal. Furthermore should the time interval between two trigger signals at this Process much longer be as the reaction time of the peripheral units, so all up present measured values before a first trigger signal a second trigger signal is generated and no difficulties in the assignment of the recorded values to the data records or Trigger signals arise.

Einer weiterentwickelten Ausgestaltung zufolge überwacht in Schritt a) jede Peripherieeinheit das für die Ablaufreferenzgröße quantitativ repräsentative Ablaufreferenzsignal und misst wenigstens eine Betriebsgröße, wenn die Ablaufreferenzgröße einen gegebenen Wert erreicht. Diese Ausgestaltung bietet insbesondere die Möglichkeit, unterschiedliche Reaktionszeiten verschiedener Peripherieeinheiten zu berücksichtigen, indem der gegebene Wert für die einzelnen Peripherieeinheiten entsprechend ihrer Reaktionszeiten unterschiedlich festgelegt wird.According to a further developed embodiment, in step a), each peripheral unit monitors the flow reference signal quantitatively representative of the flow reference variable and measures at least one operation amount when the flow reference variable reaches a given value. This embodiment offers in particular the possibility of different Respect the response times of different peripheral units by the given value for the individual peripheral units is set differently according to their reaction times.

Einer weiter bevorzugten Ausgestaltung zufolge misst in Schritt a) jede Peripherieeinheit gleichzeitig mit der Messung wenigstens einer Betriebsgröße die Ablaufreferenzgröße und übergibt die gemessenen Werte an eine Sammeleinheit, und ein Wert der wenigstens einen Betriebsgröße, der einem vorgegebenen Wert der Ablaufreferenzgröße entspricht, wird anhand von für diesem vorgegebenen Wert benachbarte Werte der Ablaufreferenzgröße gemessenen Werten der Betriebsgröße abgeschätzt. Die Abschätzung kann in der Sammeleinheit selbst oder auch in der von ihr Daten anfordernden Ausführungseinheit vorgenommen werden. Durch die Verknüpfung von Messwerten der Betriebsgröße und der Ablaufreferenzgröße in der Peripherieeinheit ist sichergestellt, dass unabhängig von Übertragungsverzögerungen zwischen den Peripherieeinheiten und der Datensammeleinheit eine Zusammenfassung von zu einem gleichen Wert der Ablaufreferenzgröße erfassten Betriebsgrößen stets möglich ist.one According to a further preferred embodiment, each measures in step a) Peripheral unit simultaneously with the measurement of at least one Operating size the expiration reference size and passes the measured values to a collection unit, and a value of at least a company size that corresponds to a predetermined value of the expiration reference, is determined by from for values of the sequence reference variable measured adjacent to this predetermined value Values of farm size estimated. The appraisal can be in the collection unit itself or even in the data of it requesting execution unit be made. By linking measured values of the farm size and the Expiration reference size in the Peripheral unit ensures that regardless of transmission delays between the peripheral units and the data collection unit Summary of values collected at an equal value of the expiration reference size Company sizes always possible is.

Ein für die Ablaufreferenzgröße repräsentatives Ablaufreferenzsignal wird vorzugsweise an alle Peripherieeinheiten verteilt.One for the Flow reference size representative Outflow reference signal is preferably sent to all peripheral units distributed.

Weitere Merkmale und Vorteile der Erfindung ergeben sich aus der nachfolgenden Beschreibung von Ausführungsbeispielen unter Bezugnahme auf die beigefügten Figuren. Es zeigen:Further Features and advantages of the invention will become apparent from the following Description of exemplary embodiments with reference to the attached Characters. Show it:

1 ein Blockdiagramm eines Mikrocontrollersystems gemäß einer ersten Ausgestaltung der Erfindung; 1 a block diagram of a microcontroller system according to a first embodiment of the invention;

2 ein Beispiel einer Speicherbelegung in der Datensammeleinheit des Mikrocontrollersystems der 1; 2 an example of memory usage in the data collection unit of the microcontroller system of 1 ;

3 ein Flussdiagramm eines von der Datensammeleinheit während der Kommunikation mit der Ausführungseinheit ausgeführten Verfahrens; 3 a flowchart of a method performed by the data collection unit during communication with the execution unit;

4 ein Blockdiagramm des Mikrocontrollersystems gemäß einer zweiten Ausgestaltung der Erfindung; und 4 a block diagram of the microcontroller system according to a second embodiment of the invention; and

5 ein Beispiel einer Speicherbelegung in der Datensammeleinheit des Mikrocontrollersystems der 4. 5 an example of memory usage in the data collection unit of the microcontroller system of 4 ,

1 zeigt ein Blockdiagramm eines Mikrocontrollersystems gemäß einer ersten Ausgestaltung der Erfindung. Mit einem Mikrocontroller 1 sind ein Zeitgeber 2 und eine Datensammeleinheit 3 in einer Baueinheit 4 zusammengefasst. Mit dieser Baueinheit 4 wirken diverse Peripherieeinheiten 5 zusammen, die dazu dienen, Betriebsgrößen einer von dem Mikrocontrollersystem 1 gesteuerten Maschine, insbesondere eines Verbrennungsmotors, zu messen und Messwerte an den Mikrocontroller 1 zu liefern. Weitere Peripherieeinheiten, die dazu dienen, Stellgrößen der Maschine gemäß Vorgaben vom Mikrocontroller 1 einzustellen, sind in der 1 weggelassen, da sie für das Verständnis der Erfindung nicht erforderlich sind. 1 shows a block diagram of a microcontroller system according to a first embodiment of the invention. With a microcontroller 1 are a timer 2 and a data collection unit 3 in a unit 4 summarized. With this unit 4 act various peripherals 5 together, which serve operating variables of one of the microcontroller system 1 controlled machine, especially an internal combustion engine, to measure and readings to the microcontroller 1 to deliver. Other peripheral units that serve to control variables of the machine according to specifications from the microcontroller 1 are in the 1 omitted because they are not required for the understanding of the invention.

In der in 1 gezeigten Ausgestaltung liefert der Zeitgeber 2 ein Taktsignal CLK direkt an den Mikrocontroller 1 und ein durch Frequenzteilung des Taktsignals erhaltenes Triggersignal TR an die Peripherieeinheiten 5 und die Datensammeleinheit 3. Die Peripherie einheiten 5 reagieren auf den Empfang des Triggersignals durch Abtasten und Digitalisieren des aktuellen Wertes einer von ihnen überwachten Zustandsgröße der Maschine und Übermitteln des erhaltenen Wertes an die Datensammeleinheit 3.In the in 1 the embodiment shown provides the timer 2 a clock signal CLK directly to the microcontroller 1 and a trigger signal TR obtained by frequency dividing the clock signal to the peripheral units 5 and the data collection unit 3 , The peripheral units 5 respond to the receipt of the trigger signal by sampling and digitizing the current value of a state quantity of the machine monitored by them and transmitting the obtained value to the data collection unit 3 ,

Die Datensammeleinheit 3 umfasst einen als eine Matrix mit einer Mehrzahl von Zeilen und Spalten organisierten Speicherbereich 6. Jeder von den Peripherieeinheiten 5 überwachten Betriebsgröße der Maschine ist eine Zeile der Matrix zugeordnet, in welcher die Messwerte der entsprechenden Betriebsgröße gespeichert werden; eine weitere Zeile kann vorgesehen sein, um Werte der Zeit zu den jeweiligen Erfassungszeitpunkten zu speichern. Jedem Erfassungszeitpunkt wiederum ist eine Spalte der Matrix zugeordnet, in welche die jeweils auf ein an dem Erfassungszeitpunkt ausgesandtes Triggersignal hin zurückgelieferten Messwerte der Betriebsgrößen eingetragen werden. Auf diese Weise werden die Spalten der Reihe nach gefüllt, und wenn alle Spalten des Speicherbereiches 6 belegt sind, wird mit neuen Messwerten jeweils diejenige Spalte, die die ältesten Messwerte enthält, überschrieben. Der Zeitpunkt, der zu einem Messwert gehört, ist anhand seiner Zugehörigkeit zu einer Spalte ermittelbar, oder er wird explizit in die Spalte eingetragen. Hierzu kann die Datensammeleinheit einen (nicht dargestellten) Zähler aufweisen, der die Triggersignale zählt und dessen Inhalt somit für die Zeit repräsentativ ist.The data collection unit 3 includes a memory area organized as a matrix having a plurality of rows and columns 6 , Each of the peripheral units 5 Monitored operating size of the machine is assigned a row of the matrix, in which the measured values of the corresponding operating size are stored; another line may be provided to store values of the time at the respective detection times. Each detection time, in turn, is assigned a column of the matrix into which the measured values of the operating variables returned to a trigger signal emitted at the detection time point are entered. In this way, the columns are filled in turn, and if all the columns of the memory area 6 are occupied, new values will overwrite the column containing the oldest measured values. The time that belongs to a measured value can be determined on the basis of its membership in a column, or it is entered explicitly in the column. For this purpose, the data collection unit may have a counter (not shown) which counts the trigger signals and whose contents are thus representative of the time.

Die Speicherung der Messwerte in dem Speicherbereich 6 gibt dem Mikrocontroller 1 die Möglichkeit, Werte von Betriebsgrößen anstatt direkt von den Peripherieeinheiten 5 auch indirekt, von der Datensammeleinheit 3, abzufragen und dabei jeweils einen Zeitpunkt, dem die Werte entsprechen sollen, zu spezifizieren, so dass zeitlich konsistente Werte im Mikrocontroller 1 verarbeitet werden können.The storage of the measured values in the memory area 6 gives the microcontroller 1 the ability to set values of operating variables rather than directly from the peripheral units 5 also indirectly, from the data collection unit 3 , to query and in each case a time to which the values should correspond, so that consistent values in the microcontroller 1 can be processed.

Einer einfachen Ausgestaltung zufolge sind die Zeitpunkte, für die der Mikrocontroller 1 Messwerte aus der Datensammeleinheit 3 abfragen kann, die den einzelnen Spalten des Speicherbereichs 6 entsprechenden Zeitpunkte, bzw. eine Anfrage des Mikrocontrollers 1 nach Messwerten, die einem Zeitpunkt zwischen den Zeitpunkten von zwei benachbarten Spalten entspricht, wird mit den Werten einer der zwei Spalten beantwortet. Alternativ kann der Datensammeleinheit 3 eine Interpolationseinheit 7 zugeordnet sein, die als Antwort auf eine einem Zeitpunkt zwischen den Zeitpunkten von zwei benachbarten Spalten entsprechende Anfrage des Mikrocontrollers 1 Werte zurückliefert, die zwischen den Messwerten der zwei Spalten interpoliert sind. Falls keine Spalte existiert, die einem Zeitpunkt nach dem abgefragten Zeitpunkt entspricht, kann die Interpolationseinheit 7 Messwerte für den abgefragten Zeitpunkt auch durch Extrapolation anhand von Messwerten aus wenigstens zwei Spalten erzeugen, die jeweils Zeitpunkten vor dem abgefragten Zeitpunkt entsprechen.According to a simple embodiment, the times for which the microcontroller 1 Measured values from the data collection unit 3 can query the individual columns of the memory area 6 ent speaking times, or a request from the microcontroller 1 For measured values that correspond to a time between the times of two adjacent columns, the values of one of the two columns are answered. Alternatively, the data collection unit 3 an interpolation unit 7 associated with the microcontroller in response to a request corresponding to a point in time between the times of two adjacent columns 1 Returns values interpolated between the measurements of the two columns. If no column exists that corresponds to a time after the requested time, the interpolation unit 7 Also produce measured values for the requested time point by extrapolation on the basis of measured values from at least two columns which respectively correspond to times before the requested time.

Einer weiterentwickelten, ebenfalls mit Bezug auf 1 beschriebenen Ausgestaltung zufolge verfügen die Peripherieeinheiten 5 jeweils über lokale Zeitgeber 8, und das Triggersignal TR hat lediglich die Funktion, zu einem gegebenen Zeitpunkt die lokalen Zeitgeber 8 auf einen gemeinsamen Ausgangswert zu synchronisieren. Da eine solche Synchronisation wesentlich seltener erforderlich ist als das Triggern der Messvorgänge gemäß der ersten Ausgestaltung, kann Kommunikationsbandbreite zwischen der zentralen Baueinheit 4 und den Peripherieeinheiten 5 eingespart werden. Insbesondere besteht die Möglichkeit, den Synchronisationsbefehl als ein Datenpaket auf einem Bus zwischen der zentralen Baueinheit 4 und den Peripherieeinheiten 5 zu übertragen; eine eigene Signalleitung für das Triggersignal wird nicht benötigt. Das auf dem Bus eingesetzte Kommunikationsprotokoll sollte eine Broadcast-Funktionalität, d.h. den Empfang eines einzigen Datenpakets durch eine Vielzahl von Peripherieeinheiten 5 gleichzeitig, unterstützen. Dadurch ist es möglich, durch einmaliges Senden eines Synchronisations-Datenpakets alle Peripherieeinheiten 5 untereinander exakt zu synchronisieren, was für die Konsistenz der Messwerte, die sie liefern sollen, wichtig ist.One evolved, also related to 1 described embodiment, the peripheral units have 5 each via local timers 8th , and the trigger signal TR has only the function, at a given time, of the local timers 8th to synchronize to a common output value. Since such a synchronization is required much less frequently than the triggering of the measuring operations according to the first embodiment, communication bandwidth between the central unit 4 and the peripheral units 5 be saved. In particular, it is possible to use the synchronization command as a data packet on a bus between the central unit 4 and the peripheral units 5 transferred to; a separate signal line for the trigger signal is not required. The communication protocol used on the bus should be broadcast functionality, ie the reception of a single data packet by a plurality of peripheral units 5 at the same time, support. This makes it possible, by transmitting a synchronization data packet once, all the peripheral units 5 Synchronize exactly with each other, which is important for the consistency of the measured values that they should deliver.

Um Messwerte der Betriebsgrößen zu gewinnen und von den Peripherieeinheiten an die Datensammeleinheit 3 zu übertragen, gibt es verschiedene Ansätze, die in einem Mikrocontrollersystem allein oder auch in Kombination miteinander realisiert werden können.To obtain measured values of the operating variables and from the peripheral units to the data collecting unit 3 There are various approaches that can be implemented in a microcontroller system alone or in combination with each other.

Ein erster Ansatz ist, die Peripherieeinheiten 5 durch Zusendung eines Konfigurationsbefehls zu konfigurieren, d.h. eines Datenpaketes, das einen Zeitabstand zwischen zwei aufeinander folgenden Messungen sowie evtl. einen Zeitoffset der ersten Messung gegenüber dem Synchronisationsbefehl enthält. Eine durch einen solchen Befehl konfigurierte Peripherieeinheit 5 liefert in den spezifizierten Zeitabständen Datenpakete an die Datensammeleinheit 3, die einen Messzeitpunkt und wenigstens einen zu dem Messzeitpunkt von der betreffenden Einheit 5 aufgenommenen Messwert enthalten. Eine eventuell je nach Typ der Peripherieeinheit 5 unterschiedliche Verzögerung zwischen dem Beginn eines Messvorganges und dem Zeitpunkt, an welchem die Messgröße tatsächlich erfasst wird, kann beim Konfigurieren berücksichtigt werden, indem Peripherieeinheiten 5, die unterschiedliche Verzögerungen aufweisen, mit unterschiedlichen Zeitoffset-Werten konfiguriert werden, die diese Verzögerungen berücksichtigen. Dies setzt allerdings voraus, dass der Mikrocontroller 1, wenn er die Konfigurationsbefehle sendet, die Verzögerungen kennt. Alternativ ist es möglich, einer solchen Verzögerung jeweils in den einzelnen Peripherieeinheiten 5 Rechnung zu tragen, indem jede Peripherieeinheit 5 einen Messvorgang jeweils rechtzeitig vor dem durch die Konfigurierung festgelegten Zeitpunkt beginnt, so dass der erhaltene Messwert tatsächlich diesem festgelegten Zeitpunkt entspricht.A first approach is the peripheral units 5 by sending a configuration command, ie a data packet containing a time interval between two consecutive measurements and possibly a time offset of the first measurement compared to the synchronization command. A peripheral device configured by such a command 5 provides data packets to the data collection unit at the specified intervals 3 that a measurement time and at least one at the measurement time of the unit in question 5 included measured value. One possibly depending on the type of peripheral unit 5 different delay between the beginning of a measurement process and the time at which the measured variable is actually detected, can be taken into account in the configuration by peripheral units 5 that have different delays, are configured with different time offset values that accommodate these delays. However, this assumes that the microcontroller 1 when sending the configuration commands that knows delays. Alternatively, it is possible to have such a delay in each of the individual peripheral units 5 Take into account each peripheral unit 5 a measurement process in each case begins in good time before the time specified by the configuration, so that the measured value obtained actually corresponds to this specified time.

Ein zweiter Ansatz ist, einen Messvorgang an einer Peripherieeinheit 5 jeweils durch Zusendung eines Datenpakets an die betreffende Einheit auszulösen, das den vom Mikrocontroller 1 gewünschten Zeitpunkt der Messung spezifiziert. Ein solches Paket wird so früh vor dem gewünschten Messzeitpunkt abgeschickt, dass es trotz möglicher Wartezeiten bei der Übertragung auf dem Bus rechtzeitig vor dem Messzeitpunkt an der Peripherieeinheit eintrifft. Es kann an mehrere Peripherieeinheiten 5 gleichzeitig adressiert werden, die gleichzeitig eine Messung durchführen sollen. Wenn die Zeitspanne zwischen dem Absenden eines Datenpakets an die Peripherieeinheiten 5 und der Lieferung der Messwerte von den Peripherieeinheiten 5 an den Mikrocontroller 1 klein im Vergleich zum Zeitabstand zwischen nacheinander abgesandten Datenpaketen ist, kann der Mikrocontroller 1 von den Peripherieeinheiten 5 gelieferte Messwerte jeweils dem im Datenpaket spezifizierten Messzeitpunkt zuordnen, ohne dass eine Zeitinformation zusammen mit den Messwerten von den Peripherieeinheiten 5 an den Mikrocontroller 1 übertragen werden muss. Wenn eine zeitliche Überschneidung möglich ist, kann vorgesehen werden, dass der Mikrocontroller jedes Datenpaket mit einer Kennung versieht, und dass die Peripherieeinheiten zusammen mit den in Reaktion auf das Datenpaket gewonnenen Messwerten dessen Kennung zurückliefern, um dem Mikroprozessor die Zuordnung der Messwerte zum richtigen Messzeitpunkt zu ermöglichen.A second approach is to perform a measurement on a peripheral unit 5 in each case by sending a data packet to the unit in question, that of the microcontroller 1 specified time of measurement specified. Such a packet is sent so early before the desired measurement time that it arrives at the peripheral unit in good time before the measurement time despite possible waiting times during the transmission on the bus. It can connect to multiple peripherals 5 addressed simultaneously, which are to perform a measurement simultaneously. If the time between the sending of a data packet to the peripheral units 5 and the delivery of readings from the peripheral units 5 to the microcontroller 1 small compared to the time interval between consecutively sent data packets, the microcontroller 1 from the peripheral units 5 Assign supplied measured values in each case to the measurement time specified in the data packet, without any time information together with the measured values from the peripheral units 5 to the microcontroller 1 must be transferred. If a temporal overlap is possible, it can be provided that the microcontroller provides each data packet with an identifier, and that the peripheral units, together with the measured values obtained in response to the data packet, return its identifier in order to allocate the measured values to the microprocessor at the correct measuring time enable.

2 zeigt exemplarisch eine Belegung des Speicherbereiches 6, die sich aus der oben beschriebenen Arbeitsweise des Mikrocontrollersystems ergeben kann. Eine erste Zeile der Matrixanordnung bezeichnet Zeitpunkte t1, t2, ..., tn von Messungen. Die anderen Zeilen enthalten jeweils, soweit vorhanden, Messwerte gi(tj), i = 1, ..., m, j = 1, ..., n der Betriebsgröße gi zur Zeit tj. Jede Speicherzelle mit ungültigem Inhalt, d.h. eine Speicherzelle, die keinen Messwert enthält, der dem Messzeitpunkt der Spalte entspricht, zu dem die Speicherzelle gehört, ist mit X gekennzeichnet. Die Kennzeichnung als ungültig kann erfolgen, indem ein hierfür an jeder Speicherzelle vorgesehenes Kennzeichnungsbit gesetzt wird, oder indem die Speicherzelle mit einem Wert beschrieben wird, der als Messwert nicht zulässig ist. 2 shows an example of an occupancy of the memory area 6 which may result from the above-described operation of the microcontroller system. A first row of the matrix arrangement designates times t 1 , t 2 ,..., T n of measurements. The other rows each contain, if any, the measured values g i (t j), i = 1, ..., m, j = 1, ..., g i of the operating variable n at time t j. Each memory cell with invalid content, ie a memory cell containing no measured value corresponding to the measurement time of the column to which the memory cell belongs, is marked with X. The invalidation can be made by setting an identification bit provided for this purpose on each memory cell or by describing the memory cell with a value which is not permitted as a measured value.

Im Beispiel der 2 sind die Peripherieeinheiten 5 so konfiguriert, dass Messwerte der Betriebsgrößen gi mit ungeradzahligem Index i zu Zeiten tj mit ungeradzahligem Index j bzw. Messwerte von Größen gi mit geradzahligem Index i zu Zeitpunkten tj mit geradzahligem Index j geliefert werden. Indem nicht sämtliche Betriebsgrößen gleichzeitig gemessen und an die Datensammeleinheit 3 übertragen werden, wird eine gleichmäßigere Auslastung des Busses zwischen den Peripherieeinheiten 5 und der Datensammeleinheit 3 erreicht, und Wartezeiten, die zwischen der Messung einer Größe und ihrer Übertragung auf den Bus auftreten können, werden gering gehalten. Dabei obliegt es der Aufmerksamkeit eines Programmierers, die Messzeitpunkte verschiedener Betriebsgrößen nach Möglichkeit so festzulegen, dass Messwerte verschiedener Größen, die, um korrekt weiter verarbeitet werden zu können, auf einen gleichen Zeitpunkt bezogen sein müssen, nach Möglichkeit gleichzeitig gemessen werden.In the example of 2 are the peripheral units 5 configured so that measured values of the operating variables of g i of odd index i at times t j of odd index j or measured values of quantities are supplied with an even-numbered index i g i at times t j with an even-numbered index j. By not measuring all the operating variables simultaneously and to the data collecting unit 3 be transferred, a more uniform utilization of the bus between the peripheral units 5 and the data collection unit 3 achieved, and waiting times that can occur between the measurement of a size and its transfer to the bus are kept low. It is the attention of a programmer to determine the measuring times of different operating variables as far as possible in such a way that measured values of different sizes, which, in order to be able to be further processed correctly, have to be related to the same time are, if possible, measured simultaneously.

Es liegt auf der Hand, dass eine Vielzahl anderer Belegungen des Speicherbereiches 6 im Rahmen der Erfindung möglich sind, so etwa der bei der oben beschriebenen ersten Ausgestaltung auftretende Extremfall, dass jede Spalte des Speicherbereiches 6 einen kompletten Satz von Werten der Betriebsgrößen g1 bis gm zu einem Zeitpunkt tj enthält, oder der entgegengesetzte Extremfall, dass die Peripherieeinheiten 5 allesamt zu verschiedenen Zeiten abgefragt werden, mit der Folge, dass jede Spalte des Speicherbereiches 6 außer der Zeitangabe lediglich einen einzigen Messwert enthält, während alle übrigen Speicherplätze als ungültig gekennzeichnet sind.It is obvious that a variety of other layouts of the storage area 6 are possible within the scope of the invention, such as the extreme case occurring in the first embodiment described above, that each column of the memory area 6 contains a complete set of values of the operational quantities g 1 to g m at a time t j , or the opposite extreme case that the peripheral units 5 all are queried at different times, with the result being that every column of the memory area 6 contains only a single measured value in addition to the time specification, while all other memory locations are marked as invalid.

3 zeigt ein Flussdiagramm einer in der Datensammeleinheit 3 ablaufenden Verarbeitung im Falle einer Anforderung des Mikrocontrollers 1 nach einem Wert der in dem Speicherbereich 6 gespeicherten Größe gi zu einem Zeitpunkt t. Der Zeitpunkt t kann einer der Zeitpunkte tj, j = 1, 2, ... sein, zu denen Messwerte wenigstens bestimmter Betriebsgrößen vorliegen, er kann aber auch beliebig zwischen zwei solchen Zeitpunkten liegen. Die Datensammeleinheit 3 prüft in Schritt S1, ob ein Messwert gi(t) der Größe gi zum angegebenen Zeitpunkt t im Speicherbereich 6 vorhanden ist. Wenn dies der Fall ist, geht das Verfahren unmittelbar zu Schritt S4 über, in welchem der betreffende Messwert gi(t) ausgegeben wird. Wenn ein Messwert für gi(t) nicht vorhanden ist, sei es, weil eine dem Zeitpunkt t entsprechende Spalte im Speicherbereich 6 insgesamt fehlt, oder weil eine solche Spalte zwar vorhanden ist, aber für die Größe gi keinen Messwert enthält, geht das Verfahren über zu Schritt S2, in welchem die der Größe gi zugeordnete Zeile des Speicherbereiches 6 nach Messwerten abgesucht wird und dem gewünschten Zeitpunkt benachbarte Zeitpunkte t+, t unter den Zeitpunkten tj, j = 1, 2, ... ermittelt und diesen Zeitpunkten t+, t entsprechende Messwerte gi(t+), gi(t) gelesen werden. In Schritt S3 wird gi(t) anhand der vorgefundenen Zeitpunkte und Messwerte durch lineare oder nichtlineare Interpolation oder einen anderen geeigneten Algorithmus abgeschätzt. Das Ergebnis der Interpolation wird in Schritt S4 ausgegeben. 3 shows a flowchart of one in the data collection unit 3 ongoing processing in case of a request from the microcontroller 1 after a value of that in the memory area 6 stored size g i at a time t. The time t can be one of the times t j , j = 1, 2,... For which measured values of at least certain operating variables are present, but it can also be arbitrary between two such times. The data collection unit 3 checks in step S1, whether a measured value g i (t) of size g i at the specified time t in the memory area 6 is available. If this is the case, the method immediately proceeds to step S4, in which the respective measured value g i (t) is output. If a measured value for g i (t) does not exist, it is because a column corresponding to the time t in the memory area 6 missing altogether, or because such a column is present, but for the size g i contains no measured value, the method goes to step S2, in which the size of the area g i associated with the memory area 6 is searched for measured values and at the desired time adjacent times t + , t - at the times t j , j = 1, 2, ... determined and these times t + , t - corresponding measured values g i (t + ), g i (t - ) can be read. In step S3, g i (t) is estimated on the basis of the times and measured values found by linear or non-linear interpolation or another suitable algorithm. The result of the interpolation is output in step S4.

Es kann ein Schritt S5 vorgesehen werden, in welchem der interpolierte Wert in die der Zeit t entsprechende Spalte des Speicherbereiches 6 nachgetragen wird, so dass sie bei neuerlichen Zugriffen so lange sofort verfügbar ist, bis die betreffende Spalte turnusgemäß mit neuen Daten überschrieben wird.It may be provided a step S5, in which the interpolated value in the time t corresponding column of the memory area 6 is added so that it is immediately available for new accesses until the column in question is overwritten on schedule with new data.

Je nach Anwendung des Mikroprozessorsystems können neben der Zeit auch andere Referenzgrößen geeignet sein, um zusammen zu verarbeitende Werte von veränderlichen Betriebsgrößen zu identifizieren. Generell ist jede beliebige Größe als Referenzgröße geeignet, die sich mit der Zeit monoton in eine gleiche Richtung entwickelt, wobei die Werte der betreffenden Größe sich auch periodisch wiederholen dürfen, sofern die Periode lang genug ist, so dass nicht zwei Spalten des Speicherbereiches 6 zu gleichen Werten der Referenzgröße gehörende, aber zu verschiedenen Zeitpunkten aufgenommene Messwerte enthalten können. Für die Steuerung von Drehbewegungen oder anderen periodisch wiederkehrenden Vorgängen ist als Referenzgröße insbesondere ein auf die Periode des Vorganges bezogener Phasenwinkel geeignet.Depending on the application of the microprocessor system, other reference variables may be suitable in addition to the time in order to identify values of variable operating variables to be processed together. In general, any size is suitable as a reference variable, which develops monotonically in the same direction over time, and the values of the relevant variable may also be repeated periodically, provided that the period is long enough, so that not two columns of the memory area 6 may include measurements taken at equal values of the reference quantity but taken at different times. For the control of rotational movements or other periodically recurring processes, the reference variable is, in particular, suitable for a phase angle related to the period of the process.

4 veranschaulicht dies an einem Blockdiagramm einer dritten Ausgestaltung des erfindungsgemäßen Mikrocontrollersystems. Elemente des Mikrocontrollersystems aus 4, die solchen des Systems aus 1 entsprechen, sind mit den gleichen Bezugszeichen versehen und werden nicht erneut erläutert. Unter den Peripherieeinheiten 5 des Mikrocontrollersystems von 4 befindet sich ein Winkelsensor 5', der zur Überwachung beispielsweise des Drehwinkels einer Kurbelwelle eines von dem Mikrocontrollersystem gesteuerten Motors dient. Der Winkelsensor 5' liefert Messwerte des Kurbelwellenwinkels über einen Kanal 10 an die Datensammeleinheit 3 und an die übrigen Peripherieein heiten 5. Der Kanal 10 kann eine ausschließlich der Übertragung der Drehwinkelinformation vorbehaltene Leitung sein, auf der der Drehwinkelsensor 5' beispielsweise bei jeder Zunahme des Drehwinkels um einen vorgegebenen Wert einen Impuls aussendet, der von den übrigen Peripherieeinheiten 5 und der Datensammeleinheit 3 gezählt wird, so dass ein aktueller Drehwinkelwert an allen Einheiten 3, 5 in gleicher Weise zur Verfügung steht. Alternativ kann der Kanal 10 auch ein logischer Kanal auf einer auch für die Übertragung anderer Informationen zwischen den Einheiten 3, 5 im Multiplex genutzten Leitung sein. Insbesondere wenn der Kanal 10 auf einer im Zeitmultiplex genutzten Leitung implementiert ist, wird in jedem zu dem Kanal 10 gehörenden Zeitfenster zweckmäßigerweise ein digitaler Datenwert übertragen, der den aktuellen Kurbelwellendrehwinkel quantitativ angibt, denn da die Drehgeschwindigkeit der Kurbelwelle aufgrund des Wechsels zwischen Kompression und Dekompression der Zylinder im Laufe eines Arbeitszyklus des Motors variiert, treten zwischen aufeinanderfolgenden Zeitfenstern des Kanals 10 unterschiedliche Änderungen des Drehwinkels auf. 4 illustrates this with a block diagram of a third embodiment of the microcontroller system according to the invention. Elements of the microcontroller system 4 that out of the system 1 correspond, are provided with the same reference numerals and will not be explained again. Under the peripheral units 5 of the microcontroller system of 4 there is an angle sensor 5 ' which is for monitoring, for example, the angle of rotation of a crankshaft of a motor controlled by the microcontroller system. The angle sensor 5 ' provides measured values of the crankshaft angle over one channel 10 to the data collection unit 3 and to the other peripherals 5 , The channel 10 can a reserved exclusively for the transmission of the rotation angle information line be on which the rotation angle sensor 5 ' For example, at each increase in the angle of rotation by a predetermined value emits a pulse from the other peripheral units 5 and the data collection unit 3 is counted, giving a current rotation angle value on all units 3 . 5 is available in the same way. Alternatively, the channel 10 also a logical channel on one also for the transfer of other information between the units 3 . 5 be in the multiplexed line. Especially if the channel 10 is implemented on a time division multiplexed line, in each one to the channel 10 A time window is expediently transmitted a digital data value, which quantitatively indicates the current crankshaft rotation angle, because as the rotational speed of the crankshaft varies due to the change between compression and decompression of the cylinder during a work cycle of the engine, occur between successive time windows of the channel 10 different changes in the angle of rotation.

Wie in der Ausgestaltung der 1 sind die Peripherieeinheiten 5 durch den Mikrocontroller 1 konfigurierbar, um jeweils bei vorgegebenen Werten des Drehwinkels oder nach einer vorgegebenen Änderung des Drehwinkels einen Messwert der von ihm überwachten Betriebsgröße zu liefern. Einer einfachen Ausgestaltung zufolge erfüllen sie diese Anforderung näherungsweise, indem sie den Messwert dann erzeugen, wenn ein von Winkelsensor 5' gemeldeter aktueller Winkelwert den vom Mikrocontroller 1 vorgegebenen soeben überschreitet, und liefern jeweils Datenpakete an die Sammeleinheit 3, die in Zuordnung zu dem vom Winkelsensor 5' gemeldeten aktuellen Winkelwert den bei diesem Winkelwert gemessenen Wert der Messgröße enthalten.As in the embodiment of 1 are the peripheral units 5 through the microcontroller 1 can be configured to deliver a measured value of the operating variable monitored by it at given values of the angle of rotation or after a predetermined change in the angle of rotation. According to a simple embodiment, they approximate this requirement by generating the measurement value when an angle sensor 5 ' Reported current angle value from the microcontroller 1 specified above, and each deliver data packets to the collection unit 3 in association with that of the angle sensor 5 ' The current angle value reported contains the value of the measured variable measured at this angle value.

Wenn der Abstand zwischen nacheinander von dem Winkelsensor 5' ausgegebenen Drehwinkelwerten klein ist, kann die aus der Abweichung des vom Mikrocontroller 1 spezifizierten Winkelwertes von dem Winkelwert der Messung resultierende Ungenauigkeit vernachlässigbar sein, das heißt, der gemessene Wert der Betriebsgröße kann als Wert der Betriebsgröße bei dem vom Mikrocontroller spezifizierten Winkelwert gehandhabt werden. Wenn eine höhere Genauigkeit erwünscht ist, kann der Wert der Betriebsgröße beim spezifizierten Winkelwert wie oben beschrieben durch Interpolation erhalten werden, wobei eine aufgrund des Wechsels zwischen Kompression variierende Winkelgeschwindigkeit bei der Interpolation berücksichtigt werden kann. Die Berücksichtigung kann auf einer anhand von theoretischen Berechnungen erwarteten oder einer am Motor beobachteten Schwankung der Winkelgeschwindigkeit basieren.If the distance between successively from the angle sensor 5 ' output angle of rotation is small, which may be due to the deviation of the microcontroller 1 specified angle value from the angle value of the measurement resulting inaccuracy be negligible, that is, the measured value of the operating variable can be handled as the value of the operating variable at the angle specified by the microcontroller angle value. When a higher accuracy is desired, the value of the operation amount at the specified angle value can be obtained by interpolation as described above, and an angle speed varying due to the change between compression can be taken into account in the interpolation. The consideration may be based on an angular velocity expected from theoretical calculations or an engine speed fluctuation observed.

Die Datensammeleinheit 3 ist an den Zeitgeber 2 angeschlossen und empfängt von diesem fortlaufend ein Zeitsignal. Indem die Datensammeleinheit 3 jedes Mal bei Empfang eines Drehwinkelwertes φj die zugehörige Empfangszeit tj aufzeichnet, beide Werte in einer Spalte des Speicherbereiches 6 einträgt und ggf. später Messwerte der Betriebsgrößen g1, ..., gm, die gepaart mit dem Zeitwert tj von den Peripherieeinheiten 5 kommend an der Sammeleinheit 3 eingehen, in die entsprechende Spalte einträgt, kann eine Belegung des Speicherbereiches 6 wie in 5 gezeigt erhalten werden. Wie mit Bezug auf 2 beschrieben, ist die Sammeleinheit 3 hier in der Lage, Werte der Betriebsgrößen gi, ..., gm zu einem vom Mikrocontroller 1 spezifizierten Zeitpunkt t unmittelbar auszugeben, wenn diese im Speicherbereich 6 vorhanden sind, oder sie durch Interpolation vom im Speicherbereich 6 enthaltenen Werten zu berechnen. Darüber hinaus besteht die Möglichkeit, durch eine zum Verfahren der 3 analoge Vorgehensweise auch jeweils Werte von Betriebsgrößen, die einem beliebigen vom Mikrocontroller 1 angegebenen Winkel der Kurbelwelle entsprechen, unmittelbar oder durch Interpolation zu ermitteln und an den Mikrocontroller 1 zu übergeben.The data collection unit 3 is at the timer 2 connected and receives from this continuously a time signal. By the data collection unit 3 each time a rotational angle value φ j is received, the associated reception time t j records both values in a column of the memory area 6 enters and, if appropriate, later measured values of the operating variables g 1 ,..., g m , which are paired with the time value t j of the peripheral units 5 coming to the collection unit 3 enter, in the corresponding column enters, can occupancy of the memory area 6 as in 5 be shown. As with respect to 2 described, is the collection unit 3 here able to get values of the operating variables g i , ..., g m to one from the microcontroller 1 specified time t immediately output, if this in the memory area 6 or by interpolation from the memory area 6 calculated values. In addition, there is the possibility of going through the procedure of 3 analogous procedure also each values of operating variables, any of the microcontroller 1 Corresponding angle of the crankshaft correspond directly or by interpolation and to the microcontroller 1 to hand over.

Auf diese Weise kann, wenn in an sich bekannter Weise eine bestimmte Steuerungsaufgabe durch einen Interrupt bei einem vorgegebenen vom Winkelsensor erfassten Winkelwert ausgelöst wird, diese Steuerungsaufgabe auf in dem Speicherbereich 6 vorhandene Datenwerte zurückgreifen, anstatt deren Erfassung auszulösen und dann das Eintreffen der Erfassungsergebnisse abzuwarten. Durch den Wegfall der Wartezeit kann die Steuerungsaufgabe nicht nur schneller ausgefühert werden, was die Anforderungen an die Leistungsfähigkeit des Mikrocontrollers 1 verringert, sondern auch mit höherer Genauigkeit, was die Wirtschaftlichkeit des Motors verbessert.In this way, if a certain control task is triggered by an interrupt at a predetermined angle value detected by the angle sensor in a manner known per se, this control task can be carried out in the memory area 6 use existing data values instead of triggering their capture and then awaiting the arrival of the capture results. By eliminating the waiting time, the control task can be performed not only faster, which is the requirements for the performance of the microcontroller 1 but also with higher accuracy, which improves the economy of the engine.

Claims (16)

Mikrocontrollersystem mit einer Ausführungseinheit (1) und einer Mehrzahl von Peripherieeinheiten (5), welche von der Ausführungseinheit (1) zu verarbeitende Daten liefern, gekennzeichnet durch eine Signalgebereinheit (2, 5'), die eingerichtet ist, ein Ablaufreferenzsignal synchron an die Peripherieeinheiten (5) zu liefern, und eine Datensammeleinheit (3), die eingerichtet ist, um von den Peripherieeinheiten (5) gelieferte, Betriebsgrößen der Peripherieeinheiten (5) repräsentierende Daten jeweils in Zuordnung zu einem Wert einer von dem Ablaufreferenzsignal repräsentierten Ablaufreferenzgröße zu speichern.Microcontroller system with an execution unit ( 1 ) and a plurality of peripheral units ( 5 ), which depends on the execution unit ( 1 ) provide data to be processed, characterized by a signal transmitter unit ( 2 . 5 ' ) arranged to send a sequence reference signal synchronously to the peripheral units ( 5 ) and a data collection unit ( 3 ), which is set up to receive data from the peripheral units ( 5 ), operating variables of the peripheral units ( 5 ) in association with a value of a flow reference variable represented by the flow reference signal. Mikrocontrollersystem nach Anspruch 1, dadurch gekennzeichnet, dass die Peripherieeinheiten (5) durch das Ablaufreferenzsignal anregbar sind, einen Messwert einer Betriebsgröße zu erzeugen.Microcontroller system according to claim 1, characterized in that the peripheral units ( 5 ) are excitable by the expiration reference signal to generate a measured value of an operating variable. Mikrocontrollersystem nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Ablaufreferenzgröße die Zeit ist.Microcontroller system according to claim 1 or 2, characterized characterized in that the expiration reference is the time. Mikrocontrollersystem nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Ablaufreferenzgröße ein Drehwinkel ist.Microcontroller system according to claim 1 or 2, characterized characterized in that the expiration reference variable is a rotation angle. Mikrocontrollersystem nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Ablaufreferenzsignal die Ablaufreferenzgröße quantitativ repräsentiert.Microcontroller system according to one of the preceding Claims, characterized in that the expiration reference signal quantitatively represents the expiration reference quantity represents. Mikrocontrollersystem nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass das Ablaufreferenzsignal Inkremente der Ablaufreferenzgröße repräsentiert.Microcontroller system according to one of claims 1 to 4, characterized in that the expiration reference signal increments represents the expiration reference size. Mikrocontrollersystem nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Datensammeleinheit (3) eine Dateninterpolationseinheit (7) zum Abschätzen des Wertes, den eine Betriebsgröße einer Peripherieeinheit (5) bei einem gegebenen Wert der Ablaufreferenzgröße hat, anhand von in Zuordnung zu dem gegebenen Wert benachbarten Werten der Ablaufreferenzgröße gespeicherten Werten der Betriebsgröße umfasst.Microcontroller system according to one of the preceding claims, characterized in that the data collecting unit ( 3 ) a data interpolation unit ( 7 ) for estimating the value that an operating quantity of a peripheral unit ( 5 ) at a given value of the execution reference variable, based on values of the operation quantity stored in association with values of the execution reference variable adjacent to the given value. Mikrocontrollersystem nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Datensammeleinheit (3) eine Speichermatrix (6) mit Zeilen und Spalten umfasst, wobei Werte einer gleichen Betriebsgröße einer gleichen Peripherieeinheit (5) in einer gleichen Zeile gespeichert sind und einem gleichen Wert der Ablaufreferenzgröße entsprechende Werte der Betriebsgrößen in einer gleichen Spalte gespeichert sind.Microcontroller system according to one of the preceding claims, characterized in that the data collecting unit ( 3 ) a memory matrix ( 6 ) with rows and columns, where values of a same operation size of a same peripheral unit ( 5 ) are stored in a same row and values of the operation quantities corresponding to an equal value of the execution reference variable are stored in a same column. Mikrocontrollersystem nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass es Teil eines Motorsteuergeräts ist.Microcontroller system according to one of the preceding Claims, characterized in that it is part of an engine control unit. Verfahren zum Bereitstellen von konsistenten Werten verschiedener Betriebsgrößen in einem Mikrocontrollersystem, insbesondere nach einem der vorhergehenden Ansprüche, mit den Schritten: a) Erfassen von jeweils einem gleichen Wert einer Ablaufreferenzgröße entsprechenden Werten von Betriebsgrößen mehrerer Peripherieeinheiten, b) Zusammenfassen der in Schritt a) erfassten Werte der Betriebsgrößen in einem Datensatz.Method for providing consistent values different company sizes in one Microcontroller system, in particular according to one of the preceding Claims, with the steps: a) Acquisition of one and the same value corresponding to an expiration reference size Values of operating variables of several Peripheral units, b) summarizing the steps covered in step a) Values of farm sizes in one Record. Verfahren nach Anspruch 10, gekennzeichnet durch den Schritt: c) Ergänzen (S3) eines in dem Datensatz fehlenden Werts wenigstens einer Betriebsgröße durch Berechnen anhand von wenigstens zwei Werten derselben Betriebsgröße, die in anderen Werten der Ablaufreferenzgröße zugeordneten Datensätzen enthalten sind.A method according to claim 10, characterized by the step: c) Complete (S3) of a missing in the record value of at least one operating variable Calculating on the basis of at least two values of the same operating variable, the contained in other values of the expiration reference size associated records. Verfahren nach Anspruch 10, gekennzeichnet durch den Schritt: c) Erzeugen (S3) eines Datensatzes zu einem vorgegebenen Wert der Ablaufreferenzgröße, indem für jede Betriebsgröße des Datensatzes ein Wert anhand von wenigstens zwei Werten derselben Betriebsgröße berechnet wird, die in anderen Werten der Ablaufreferenzgröße zugeordneten Datensätzen enthalten sind.A method according to claim 10, characterized by the step: c) generating (S3) a data set for a given Value of the expiration reference size by for every Operating size of the data record calculates a value based on at least two values of the same farm size containing records associated with the expiration reference in other values are. Verfahren nach Anspruch 10, 11 oder 12, dadurch gekennzeichnet, dass in Schritt a) ein Triggersignal als ein Ablaufreferenzsignal an die Peripherieeinheiten gesendet wird, wenn die Ablaufreferenzgröße einen gegebenen Wert erreicht, und die Betriebsgrößen jeweils bei Empfang des Triggersignals gemessen werden.A method according to claim 10, 11 or 12, characterized characterized in that in step a) a trigger signal as a sequence reference signal is sent to the peripheral units when the expiration reference size is one given value is reached, and the operating variables in each case upon receipt of the Trigger signal are measured. Verfahren nach Anspruch 10, 11 oder 12, dadurch gekennzeichnet, dass in Schritt a) jede Peripherieeinheit das für die Ablaufreferenzgröße quantitativ repräsentative Ablaufreferenzsignal überwacht und wenigstens eine Betriebsgröße misst, wenn die Ablaufreferenzgröße einen gegebenen Wert erreicht.A method according to claim 10, 11 or 12, characterized characterized in that, in step a), each peripheral unit quantifies the flow reference variable representative Outflow reference signal monitored and measures at least one farm size, if the expiration reference size is one given value reached. Verfahren nach Anspruch 10, 11 oder 12, dadurch gekennzeichnet, dass in Schritt a) jede Peripherieeinheit (5) gleichzeitig mit der Messung wenigstens einer Betriebsgröße die Ablaufreferenzgröße misst und die gemessenen Werte an eine Sammeleinheit (3) übergibt.Method according to claim 10, 11 or 12, characterized in that in step a) each peripheral unit ( 5 ) measures the sequence reference variable simultaneously with the measurement of at least one operating variable and sends the measured values to a collecting unit ( 3 ) passes. Verfahren nach Anspruch 15, dadurch gekennzeichnet, dass ein für die Ablaufreferenzgröße repräsentatives Ablaufreferenzsignal an alle Peripherieeinheiten verteilt wird.Method according to claim 15, characterized in that that one for the expiration reference is representative Outflow reference signal is distributed to all peripheral units.
DE102006008634A 2005-12-23 2006-02-24 Microcontroller system, has data collecting unit arranged to store data provided by peripheral units and representing operating variables of peripheral units in appropriation to value of functional reference variables Withdrawn DE102006008634A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102006008634A DE102006008634A1 (en) 2005-12-23 2006-02-24 Microcontroller system, has data collecting unit arranged to store data provided by peripheral units and representing operating variables of peripheral units in appropriation to value of functional reference variables
PCT/EP2006/069675 WO2007074069A1 (en) 2005-12-23 2006-12-13 Microcontroller system comprising peripheral units

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102005061866 2005-12-23
DE102005061866.9 2005-12-23
DE102006008634A DE102006008634A1 (en) 2005-12-23 2006-02-24 Microcontroller system, has data collecting unit arranged to store data provided by peripheral units and representing operating variables of peripheral units in appropriation to value of functional reference variables

Publications (1)

Publication Number Publication Date
DE102006008634A1 true DE102006008634A1 (en) 2007-06-28

Family

ID=37808239

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102006008634A Withdrawn DE102006008634A1 (en) 2005-12-23 2006-02-24 Microcontroller system, has data collecting unit arranged to store data provided by peripheral units and representing operating variables of peripheral units in appropriation to value of functional reference variables

Country Status (2)

Country Link
DE (1) DE102006008634A1 (en)
WO (1) WO2007074069A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009021819A1 (en) * 2007-08-16 2009-02-19 Robert Bosch Gmbh Companion chip for a microcontroller
WO2009080549A2 (en) * 2007-12-20 2009-07-02 Endress+Hauser Process Solutions Ag Field device and method for checking the calibration of a field device
WO2015139828A1 (en) * 2014-03-15 2015-09-24 Schneider Electric Automation Gmbh Method for measuring a time-variable physical measurement variable and corresponding measuring device and measurement value processing device

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19900724A1 (en) * 1999-01-12 2000-07-27 Zeiss Carl Fa Coordinate measuring device
US6704684B2 (en) * 1999-10-22 2004-03-09 Carl-Zeiss-Stiftung Method for determining measuring points on a workpiece and a measuring system therefor
DE19953192A1 (en) * 1999-11-05 2001-05-10 Bosch Gmbh Robert Transmission device
DE10048780A1 (en) * 2000-09-29 2002-04-18 Bosch Gmbh Robert Operational control in vehicle using independent sensor and control unit, employs delay ensuring sensor information readiness for read-in and processing

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009021819A1 (en) * 2007-08-16 2009-02-19 Robert Bosch Gmbh Companion chip for a microcontroller
US8312251B2 (en) 2007-08-16 2012-11-13 Robert Bosch Gmbh Companion chip for a microcontroller with global time management module ensuring consistency and FIFO module for internal and external data transfer
WO2009080549A2 (en) * 2007-12-20 2009-07-02 Endress+Hauser Process Solutions Ag Field device and method for checking the calibration of a field device
WO2009080549A3 (en) * 2007-12-20 2009-12-17 Endress+Hauser Process Solutions Ag Field device and method for checking the calibration of a field device
WO2015139828A1 (en) * 2014-03-15 2015-09-24 Schneider Electric Automation Gmbh Method for measuring a time-variable physical measurement variable and corresponding measuring device and measurement value processing device

Also Published As

Publication number Publication date
WO2007074069A1 (en) 2007-07-05

Similar Documents

Publication Publication Date Title
EP1810096B1 (en) Method for exchanging data between stations from different networks
EP1756986B1 (en) Method for establishing a global time base in a timed communications system and associated communications system
DE102005001946B4 (en) System for controlling the behavior of a vehicle
DE102017006876B4 (en) Server, procedure, program, recording medium and system for maintaining temporal accuracy
EP1368935A2 (en) Synchronous, clocked communication system with local input/output components and method for integrating local input/output components into such a system
DE10333932A1 (en) Synchronization of data processing units
EP1168120B1 (en) Method and device for serial data transmission between a position measuring system and a processing unit
DE19616855B4 (en) Method of data processing in a numerically controlled drive unit
DE10145218A1 (en) Method and device for time determination in a bus system and bus system
DE2551680C2 (en) Method and device for addressing a central memory, in particular in an electronic fuel injection system for internal combustion engines
DE102006008634A1 (en) Microcontroller system, has data collecting unit arranged to store data provided by peripheral units and representing operating variables of peripheral units in appropriation to value of functional reference variables
EP1639758A2 (en) Method, device and system for the exchange of data via a bus system
EP0784747A1 (en) Process and device for controlling a regulating member
DE102006010779A1 (en) An information processing system in which information describing a current time is transferred from one computer to another to be used in calculating a delay amount of data transfer between the computers
EP1220104A2 (en) Method and communication system to exchange data between at least two subcribers in a bus system
DE3817705C2 (en)
EP2932634B1 (en) Assigning timestamps to received data packets
EP2438712A1 (en) Method for operating a data transfer system, data transfer system and computer program product
EP2804059B1 (en) Method for transferring data between a position measuring device and an associated processing unit and a position measuring device for the same
DE19815647C2 (en) Method for synchronizing a local to a central time base, and device for carrying out the method with preferred uses
DE10216332A1 (en) Measuring device for process technology and operating procedures for a measuring device
DE102008019287A1 (en) A method for automatically generating a time scheme for communicating distributed processes of a digital network
EP1098236A2 (en) Transmission device
DE102007020440B4 (en) Synchronization bus system, communication units for a synchronization bus system and method for exchanging messages for time synchronization
DE102009000584A1 (en) Diagnosis of the synchronization of two communication networks of an electronic data processing system

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee