Herunterladen Diese Seite drucken

Werbung

CAN I/O14 PRO Benutzerhandbuch
Grundlagen, Installation, Inbetriebnahme,
Programmierung
UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0

Werbung

loading

Inhaltszusammenfassung für HAWE Hydraulik CAN I/O14 PRO

  • Seite 1 CAN I/O14 PRO Benutzerhandbuch Grundlagen, Installation, Inbetriebnahme, Programmierung UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0...
  • Seite 2 Datentypen ........51 2/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 3 6.10.17 canio14_sleep ­ Autoabschaltung ......86 7 Haftungsausschluss HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0...
  • Seite 4 6.21 Kurve der ABK Funktion ........67 4/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 5 6.18 FB TON, TOF Ein­/Ausgänge ........85 HAWE Hydraulik SE UG CAN IO14 PRO DE ­...
  • Seite 6 6.52 canio14_sleep anwenden ........86 6/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 7 • Die einwandfreie Funktion ist nur in einem Temperaturbereich zwischen ­40 °C bis +85 °C (Tem­ peratur im Gerät) gegeben. • Der Abstand zu funkausstrahlenden Anlagen muss ausreichend sein. HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 7/87...
  • Seite 8 • alle diese Ausgänge können optional auch als Eingänge verwendet werden. • verfügt über 6 analoge Eingänge für Spannungen bis 32V DC, 4..20mA, Frequenz­ und PWM­Messung geeignet, counter, pull up and pull down, und als Digital­Eingänge nutzbar. 8/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 9 Werden die Ausgänge einer Gruppe mit Spannung versorgt die höher ist als die Versorgungsspannung, kommt es bei der analogen Messung zu einem Übersprechen von bis zu 3V! HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 9/87...
  • Seite 10 Abb. 1.1: Abmessungen CAN I/O 14 PRO Pinbelegungsplan 1.3.3 Die Belegung der Steckerpins findet sich als Aufdruck auf dem CAN I/O 14 pro Abb. 1.2: Front­Aufdruck CAN I/O 14 PRO 10/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 11 Als µController­Spannungsversorgung: versorgt den µController und Pin A7 (Sensorsupply), nicht aber die Ausgänge mit Spannung. Verwendungsbeispiel: Einschaltung über Zündung, wohingegen die Ausgangsversorgung (Pin A1 u. Pin A8) erst mit dem Nebenabtrieb eingeschaltet wird. Optional als Digitaleingang: Schaltpunkt 5,8V/4,7V, Eingangswiderstand 53kΩ; HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 11/87...
  • Seite 12 Customer Portal <https://customerportal.hawe.com/s/>. Der Adapter kann auch direkt bei PEAK­Systems bezogen werden. | Die Treiber und Software zum PEAK­Adapter müssen aus dem HAWE Software Center geladen und installiert werden. 12/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 13 Tab. 1.4: Software, Tools und Gerätetreiber Bezeichnung Hersteller Beschreibung Quelle CAN­IO 14 PRO de­ HAWE Hydraulik SE Default parameter set HAWE Softwareportal fault Parameters CAN­IO 14 PRO de­ HAWE Hydraulik SE Default firmware HAWE Softwareportal fault Firmware CAN­IO 14 PRO Firm­...
  • Seite 14 Masse der Spannungsquelle (Batterie) geführt werden. Der möglicherweise nicht vermeidbare gemeinsam genutzte Draht zur Spannungsquelle muss so kurz wie möglich sein. Besonders dieser Teil sollte einen hohen Querschnitt aufweisen. 14/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 15 Durch die Induktionsströme der Magnetspulen erscheint die Summe der Spulenströme größer, als der von der Spannungs­ quelle abgegebene Strom. Werden die Ausgänge schwarz­weiß bzw. mit 100% PWM angesteuert, verschwindet dieser Effekt. HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 15/87...
  • Seite 16 Sensoren weniger als 20mA Strom aufnehmen, wird deren Strom über die­ sen Eingangspin zur Masse fließen, sobald der Widerstand der gemeinsamen Masse (B7) durch Lastströme ansteigt. 4..20mA Abb. 2.3: Sensor­GND über Analogeingang 16/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 17 Sollwertes eine gefährliche Situation verursachen könnten, muss die Versorgung der Pins A1/A8 über eine externe Notabschaltung geführt werden (Not­Aus­Taster oder Not­Aus­Relais). So kann im Notfall die Spannungsversorgung abgeschaltet und die Ausgänge stromlos gemacht werden. HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 17/87...
  • Seite 18 Geräte brauchen diese separate Verbindung zum Ground. Bei den HAWE­Produkten wird, sofern nichts anderes angegeben ist, die Groundverbindung über die Masse (GND) der Spannungsversorgung realisiert. Es wird also keine eigene Ader für Ground verwendet. 18/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 19 An beiden Enden einer CAN­Strecke die zwei oder mehr CAN­Bus­Teilnehmer miteinander verbindet muss an beiden Enden ein Abschlusswiderstand von 120 Ohm eingebaut werden. Dieser Widerstand HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 19/87...
  • Seite 20 Reflexionen zu verhindern. Es ist darauf zu achten, dass die Abschlusswiderstände nur an den Enden der CAN­Strecke eingebaut sind. 20/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 21 CAN I/O 14 PRO und der Laptop über Dongle im CAN­Netz angeschlossen sind, müssen zwei solche Widerstände (jeweils einer an jedem Bus­Ende) angeschlossen sein. HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0...
  • Seite 22 Es ist nicht ausreichend, dass ein Telegramm mit der ID 1FFF…h erscheint! Das Telegramm muss exact die ID 1FFFFFF0h aufweisen, exakt 8 Datenbyte lang sein und in Byte 5 den Wert 00 schicken. siehe Abschnitt „Software, Tools und Gerätetreiber“. 22/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 23 CAN1 High Pin 7 Abb. 3.3: Der PCAN­USB­Adapter Abb. 3.4: Lage der Pins bei D­SUB 4. Wird in der unteren Statuszeile des PCAN­View der Fehler BUSHEAVY rot angezeigt? HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 23/87...
  • Seite 24 Können Sie sich trotz Ausschluss all dieser möglichen Fehler nicht mit dem Gerät verbinden, wenden Sie sich bitte an unseren Service bzw. schicken Sie das Gerät an HAWE zur Reparatur bzw. zum Austausch ein. 24/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 25 • Der Dateityp muss auf „S­Record Datei (*.s19)“ oder auf „Alle Dateien *.* „ eingestellt werden, um s19­Dateien zu sehen. • Nach der Auswahl mit „Öffnen“ bestätigen. HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 25/87...
  • Seite 26 • Mit dem Button „Firmware übertragen“ wird die Firmware auf das CAN I/O 14 PRO übertragen. • Ein Fortschrittsbalken zeigt den Übertragungsfortschritt an. Abb. 4.3: HAWE.eUpdate Firmware übertragen • Erscheint am Ende der Übertragung keine Fehlermeldung, war die Übertragung erfolgreich. 26/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 27 • Nach dem Übertragen der Firmware sollte das CAN I/O 14 PRO neu gestartet werden. Warnung: Während der Übertragung der Firmware darf das CAN I/O 14 PRO nicht von der Span­ nung und nicht vom CAN­Bus getrennt werden! HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 27/87...
  • Seite 28 Bei der ersten Verwendung sollte über „Layouts“ die Projektdatei „Project_CANIO14_PRO.xml“ gewählt werden. Später lassen sich eigene, angepasste Projektdateien erzeugen. Abb. 5.1: VisualTool ­ Projektauswahl In der linken Spalte auf „Device..“ klicken 28/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 29 Abb. 5.3: VisualTool ­ Verbindung 2 Nach kurzer Zeit sollte sich der untere Rand des Fensters grün färben und es sollten die ersten Daten zum Gerät im Hauptfenster sichtbar werden: HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 29/87...
  • Seite 30 Wenn keine Verbindung zustande kommt und die unterste Zeile gelb bleibt, sollten Sie die Verdrahtung überprüfen und die Kommunikationseinstellungen, wie in der Kurzbeschreibung des HAWE­VisualTool beschrieben, nochmals überprüfen. 30/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 31 Laptop/PC installiert werden. Tipp: Das SDK ist nur für Windows verfügbar. 1. Laden Sie das SDK von der Website herunter und führen Sie die Datei aus. HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 31/87...
  • Seite 32 Installation zu starten. Abb. 6.2: SDK Installation 2 3. Warten Sie, bis die Installation abgeschlossen ist und schließen Sie das Installationsprogramm mit einem Klick auf den Button „Close“. 32/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 33 Je nach dem, wie Sie Visual Studio Code installiert haben, können Sie das Projekt über den Dateiex­ plorer durch einen Rechtsklick auf den Projektordner und die Auswahl von „Open with Code“ öffnen. HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0...
  • Seite 34 Entwicklung und das Kompilieren der Software für das CAN I/O 14 PRO ermöglichen. Bitte wählen Sie „Install“ und warten Sie, bis alle Erweiterungen korrekt installiert sind. 34/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 35 Drücken Sie dazu auf Ihrer Tastertaur STRG + SHIFT + P und geben Sie „CMake: select a Kit“ ein. Wählen Sie dann das angebotene „CAN I/O 14 PRO *Compiler toolchain for HAWE CAN I/O 14 PRO“ aus. HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 35/87...
  • Seite 36 Curser befindet. Mit den Auf­/Ab­Pfeiltasten und den Tasten ENTER oder TAB kann ein Vorschlag aus der Liste ausgewählt werden. Um die Vorschläge zu ignorieren, drücken Sie bitte ESC. 36/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 37 JEKTSTATUS“ und „PROJEKTGLIEDERUNG“ (ist die Sprache im Visual Studio Code auf englisch, dann „PROJECT STATUS“ und „PROJEKT OUTLINE“). Unter dem Punkt „PROJEKTGLIEDERUNG“ erscheint der Name des Projektes: HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 37/87...
  • Seite 38 Namens, sollte das Projekt geschlossen und neu geöffnet werden. Abb. 6.15: Projektname in CMakeList.txt Neben dem Projektnamen sind drei Symbole für die drei Aufgaben: „Konfigurieren“, „Build“ und „Berei­ nigen“. 38/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 39 Abb. 6.16: Buildmenue Funktion Konfigurieren HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 39/87...
  • Seite 40 Abb. 6.17: Buildmenue Funktion Build 40/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 41 Wird einer dieser Befehl ausgeführt, öffnet sich ein Terminalfenster am unteren Rand des Editors. Hier sehen Sie die Rückmeldungen der ausgeführten Befehle. In der Registerkarte „Probleme“ werden alle Fehler und Warnungen angezeigt, die während der Ausführung aufgetreten sind. HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 41/87...
  • Seite 42 [build] Der Build wurde mit dem Exitcode 0 abgeschlossen. Die Kompilierung ist abgeschlossen, wenn im Terminalfenster die Meldung „Build finished“ erscheint. Die erzeugte S19­Datei befindet sich im Ordner „build\“ des Projektes. 42/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 43 5. Das logische Oder in ST durch OR kann so verwendet oder durch || ersetzt werden. 6. Eine Bit­weise Anweisung in ST via OR muss durch OR_WORD oder | ersetzt werden. HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0...
  • Seite 44 Kapitel Funktionen des HAWE­Layers ) Diese Datei sollte nicht verändert werden! Ein leicht verständliches Buch für den Einstieg in C ist https://www.c­howto.de/ Ein weiteres, umfangreicheres Werk ist https://openbook.rheinwerk­verlag.de/c_von_a_bis_z/index.htm 44/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 45 Um nicht mit einem Zufallswert zu arbeiten, sollte jeder Variablen ein initialer Anfangswert zugewiesen werden. Eine Definition beschreibt die Eigenschaften einer Variablen oder Funktion und sorgt dafür, dass Speicherplatz für deren Inhalt reserviert wird. HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 45/87...
  • Seite 46 Gültigkeit, so lange das Programm ausgeführt wird, also bis zum Abschalten der Steuerung. Der am Ende eines Programmdurchlaufs gespeicherte Wert steht also im nächsten Programmdurchlauf weiter zur Verfügung. Hier ein Beispiel dazu: 46/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 47 // ... und behält ihre Gültigkeit bis zum Ausschalten␣ der Steuerung. /*----------------------------------------------------------------------------*/ * @brief Hauptkontrollfunktion fuer PLC Logik void usercode(void) // User code (Fortsetzung auf der nächsten Seite) HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 47/87...
  • Seite 48 Das Einbinden der Datei vars.h in die Datei user_code.c erfolgt durch die Zeile: Quellcode 6.6: Variable erstellen 6 * @file user_code.c * @author HAWE Hydraulik SE * @brief Implementation of user application. * @copyright Copyright (c) 2024 All rights reserved. HAWE Hydraulik SE #include <canio14pro/api.h> #include <canio14pro/can.h>...
  • Seite 49 • Innerhalb der geschweiften Klammern werden nun die einzelnen Werte als Variablen deklariert {uint8_t IN; uint8_t Q; int32_t PT; …}. • Nach den geschweiften Klammern folgt die Bezeichnung des neuen Datentyps „TON_TYPE“. HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 49/87...
  • Seite 50 Funktion arbeitet mit den Werten einer Strukturvariablen vom Typ „TON_TYPE“. „timer1“ wurde zu die­ sem Zweck im Beispiel in Zeile 1 angelegt. Der Zeiger auf den Speicherplatz dieser Variablen heißt &timer1 . 50/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 51 1234; (bool_wert // entspricht TRUE // hier wird der Code ausgeführt, wenn bool_wert den Wert TRUE hat (bool_wert FALSE) // entspricht 0 (Fortsetzung auf der nächsten Seite) HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 51/87...
  • Seite 52 // entspricht TRUE bool_wert TRUE; // hier wird der Code ausgeführt, wenn int_wert ungleich 0␣ bool_wert // hier wird der Code ausgeführt, wenn int_wert gleich 0 ist 52/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 53 1. #define steuert ein Macro, um vor dem Compilieren, den sprechenden Namen wieder durch das original zu ersetzen. 2. <spechenderName> durch den selbst gewählten Bezeichner ersetzen. 3. <0..199> durch die gewünschte Nummer der SPS­Variablen im VisualTool ersetzen. HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 53/87...
  • Seite 54 0 (AI0) heißt AI0_RAW. Die Bezeichner für die anderen Eingänge sind entsprechend AI1, AI1_RAW, AI2, AI2_RAW, AI3, AI3_RAW, AI4, AI4_RAW, AI5, AI5_RAW, AI6, AI6_RAW. Funktionen: input_calc_rd(..) Liefert den berechneten Wert, nach umrechnung gemäß der Parameter im HAWE­VisualTool. 54/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 55 Tastverhältnis in ‰. Die Anwendung entspricht der, für die Verwendung als Analogeingang. fq_get_duty(..) Verhältnis von Einschaltzeit zu Ausschaltzeit eines PWM­Signals. 100%PWM = 100% eingeschaltet und 0% ausgeschaltet. HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 55/87...
  • Seite 56 Ausgang 0 digital geschaltet werden, muss zyklisch die Funktion QB_SET(0,[schaltzustand]) aufgerufen werden. QB_SET (<Ausgangsnummer>,<Schalter>); Schaltet den Ausgang digital (schwarz/weiß). Mögliche Werte für den „Schalter“ sind 0 (oder „FAL­ SE“) = ausgeschaltet und 1 (oder „TRUE“) = eingeschaltet. 56/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 57 : const void * │ ──┼─► p_bus_id : uint16_t │ │ │ └─────────────────────────────────────────┘ can_wr(uint32_t id, uint8_t len, const void * const data, uint16_t p_bus_id); Eingänge und Parameter HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 57/87...
  • Seite 58 {1, 2, 3, 4}; uint16_t can_bus CAN_BUS_01; can_wr(id, len, data, can_bus); return Aus kompatibilitätsgründen gibt es von dieser Funktion noch zwei weitere Varianten: can_wr_int zum Schreiben von vier 16­Bit Integer­Werten: 58/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 59 .bus CAN_BUS_01, // CAN_BUS_ANY, CAN_BUS_01, CAN_BUS_02 .extended CAN_STANDARD, // CAN_STANDARD (11 bits), CAN_EXTENDED (29 bits) 0x204U, // CAN message ID (Fortsetzung auf der nächsten Seite) HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 59/87...
  • Seite 60 Quellcode 6.28: can_msg_schema 2 const struct can_msg_schema can_table[] .bus CAN_BUS_01, .extended CAN_STANDARD, 0x204U, .dlc .data &syt_val[100], .callback NULL, .timeout .bus CAN_BUS_01, .extended CAN_STANDARD, 0x205U, (Fortsetzung auf der nächsten Seite) 60/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 61 Quellcode 6.29: can_msg_schema 3 * @file can_table.c * @author HAWE Hydraulik SE * @brief Configuration table for automatic CAN message processing and timeout * control. * @copyright Copyright (c) 2024 All rights reserved. HAWE Hydraulik SE #include <stddef.h> #include <canio14pro/can.h>...
  • Seite 62 So können Funktionen der Software beeinflussbar gemacht werden, ohne z.B. einem Servicetechniker Zugriff auf den Sourcecode geben zu müssen. Solche Parameter werden Userparameter oder Benutzerparameter genannt. 62/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 63 Funktionen können maximal einen Wert direkt zurück geben. So ist es auch bei der Funktion MUL_DIV. Das Ergebnis kann dann direkt, wie im Beispiel oben, in eine Variable geschrieben werden. Gibt HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0...
  • Seite 64 Programmdurchlauf gelöscht werden. sie muss also entweder als Global oder mit dem „Präfix“ static angelegt werden. Hier ein Beispiel: Quellcode 6.33: FB mit Zeiger 1 void usercode(void) (Fortsetzung auf der nächsten Seite) 64/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 65 Y : int16_t o─┼── │ │ │ -- Params -- │ │ - X1 : int16_t │ │ - X2 : int16_t │ └─────────────────────────────────┘ (Fortsetzung auf der nächsten Seite) HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 65/87...
  • Seite 66 Eingangswert der Funktion in X der Struktur␣ von abk1 geschrieben. Weil aber *abs()* ein *int*␣ zurückgibt und abk1.X ein *int16_t* ist, wird der Wert␣ explizit (Fortsetzung auf der nächsten Seite) 66/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 67 Die Funktion act_valve() wird zur Ansteuerung von Proportionalausgängen verwendet. ┌─────────────────────────┐ │ act_valve │ ├─────────────────────────┤ ──┼─► output : uint16_t │ ──┼─► setp : int16_t │ │ │ └─────────────────────────┘ extern void act_valve(uint16_t output, int16_t setp); HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 67/87...
  • Seite 68 -- Params -- │ │ - VEL_LFT : int16_t │ │ - VEL_RGT : int16_t │ │ - VEL_MIN_LFT : int16_t │ (Fortsetzung auf der nächsten Seite) 68/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 69 Aktors korrigiert werden muss, wird ein Sollwert (SETP) generiert, mit dem der Ausgang (bzw. die Aus­ gänge) angesteuert werden kann. Die Funktion gibt auch die Richtung (DIR) und den Status (WARN) zurück. Anwendungsbeispiel HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 69/87...
  • Seite 70 ──┼─► x : int16_t │ ──┼─► lim : int16_t │ │ │ └───────────────────────────────────┘ extern sint16 axb(sint16 x1, sint16 x2, sint16 y1, sint16 y2, sint16 x, sint16␣ lim); 70/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 71 │ - POS_MAX : int16_t │ │ - POS_MXB : int16_t │ │ - POS_MNB : int16_t │ │ - POS_MIN : int16_t │ (Fortsetzung auf der nächsten Seite) HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 71/87...
  • Seite 72 Proportionalausgänge 0 und 1 angesteuert. Quellcode 6.40: BREMS_POS anwenden /* --- Global Variables ----------------------------------------------------- */ static BREMS_POS_TYPE zylinder; // Strukturvariable für die Funktion BREMS_POS (Fortsetzung auf der nächsten Seite) 72/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 73 Wertebereich eines Benutzerparameters liegt zwischen ­32768 und 32767 und entspricht einem 16­Bit­Vorzeicheninteger (int16_t) Anwendungsbeispiel: Lese den Wert aus Benutzerparameter 20. Quellcode 6.41: ee_rd / get_ee anwenden void usercode(void) (Fortsetzung auf der nächsten Seite) HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 73/87...
  • Seite 74 Die Werte, die so gespeichert wurden, sind noch nicht dauerhaft gespeichert, sondern gehen beim Aus­ schalten der Steuerung verloren. Um sie dauerhaft zu speichern, muss die Speicherfunktion ee_save() ausgeführt werden. 74/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 75 │ └────────────────────────────────────────────┘ extern int16_t MUL_DIV(int16_t x, int16_t y, int16_t z); Tab. 6.11: FB MUL_DIV() Ein­/Ausgänge Funktion Bezeichnung Beschreibung Eingänge Eingangswert Eingangswert Eingangswert Ausgänge return Ergebnis der Dreisatzrechnung HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 75/87...
  • Seite 76 Beschreibung Eingänge block_mw Zeiger auf eine Strukturvariable vom Typ MW_TY Eingangswert Anzahl der Werte, die für die Mittelwertbildung herangezogen werden sollen Ausgänge Fortsetzung auf der nächsten Seite 76/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 77 Tab. 6.13: FB parall() Ein­/Ausgänge Funktion Bezeichnung Beschreibung Eingänge SPEED Sollwertvorgabe (z.B. von einem Joystick über Analogeingang) POS1 Aktuelle Positionen des ersten Aktors Fortsetzung auf der nächsten Seite HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 77/87...
  • Seite 78 AI3; // Position des dritten Zylinders. parallelregler.POSI4 AI3; // Position eines belibigen der drei Zylinder, weil␣ kein vierter Zylinder vorhanden ist. parallelregler.enable (Fortsetzung auf der nächsten Seite) 78/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 79 Varia- blen dest_old Alter Zielwert deviation Abweichung (nicht beschreiben!) percentage_old Alte Vorsteuerung (nicht beschreiben!) integ Integrationswert (int32_t) no_integ Kein Integrationswert (nicht beschreiben!) Fortsetzung auf der nächsten Seite HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 79/87...
  • Seite 80 800; // Vorsteuerung in Promill // Soll- und Istwert setzen druckregler.dest solldruck; // Sollwert druckregler.actual istdruck; // Istwert // PID-Regler initialisieren pid_set(&druckregler); // Ergebnis weiterverwenden ACT_VALVE(0,sollwert_druck) 80/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 81 Die Funktion RAMPS_EX dient zur Implementierung einer Rampenfunktion. ┌────────────────────────────────────┐ │ RAMPS_EX │ ├────────────────────────────────────┤ ──┼─► : int16_t OUT : int16_t o─┼── │ │ │ -- Params -- │ (Fortsetzung auf der nächsten Seite) HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 81/87...
  • Seite 82 1000; ramp1.STEP_DN 1000; void usercode(void) static RAMPS_TYPE ramp1; int16_t setpoint_p0 // Beispiel-Sollwert // Sollwert setzen setpoint_p0 AI0; // Beispielwert von Analogeingang 0 (Fortsetzung auf der nächsten Seite) 82/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 83 Werte eingesetzt werden. Anwendungsbeispiel: Quellcode 6.50: SPLINE anwenden /* --- Global Variables ----------------------------------------------------- */ const C_SPLINE_TY spline // Eine Variablenstruktur vom Typ C_SPLINE_TY␣ (Fortsetzung auf der nächsten Seite) HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 83/87...
  • Seite 84 │ - PT : int32_t │ └───────────────────────────────────┘ extern void TOF(TON_TYPE* block_ton); Die Funktionen benötigen einen Zeiger auf je eine Strukturvariable vom Typ TON_TYPE. Die einzelnen Werte werden über diese Struktur übergeben: 84/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 85 // zyklischer Aufruf des Timers. Hier ein anzugverzögerter␣ Timer. timer1Status timer1.Q; // Nach Ablauf der 3 Sekunden wird Q = 1 und bleibt 1, bis IN auf 0 gesetzt wird. HAWE Hydraulik SE UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 85/87...
  • Seite 86 Das CAN I/O schaltet sich ab, 1 Sekunde nachdem Pin B5 abgeschaltet wird und keine CAN­Nachricht mehr empfangen wird. Anwendung: Der folgende Beispielcode zeigt, wie die canio14_sleep Funktion in einem Benutzercode verwendet wird. Quellcode 6.52: canio14_sleep anwenden void usercode(void) canio14_sleep(); 86/87 UG CAN IO14 PRO DE ­ 09­2024 ­ 1.0.0 HAWE Hydraulik SE...
  • Seite 87 Haftungsausschluss Die in diesem Dokument enthaltenen Informationen stehen ausschließlich im Zusammenhang mit HAWE­Produkten. HAWE Hydraulik SE und ihre Tochtergesellschaften („HAWE“) behalten sich das Recht vor, jederzeit und ohne Vorankündigung Änderungen, Korrekturen, Modifikationen oder Verbes­ serungen an diesem Dokument und den beschriebenen Produkte und Dienstleistungen jederzeit und ohne Vorankündigung vorzunehmen.