Forum: Compiler & IDEs Flowcode v6 CAN-Bus


von Pascal W. (Gast)


Lesenswert?

Hallo,

ich hoffe ich bin hier in der richtigen Rubrik und ihr könnt mir hier 
helfen. Sagt es mir, wenn ich falsch bin. Leider bin ich noch recht 
unerfahren hier. :p

Ich nutze für mein Projekt Flowcode v6 und bastel einen kleinen CAN-Bus. 
Dabei möchte ich einen Servomotor über ein Potentiometer regeln.

Sensor und Aktor sind jeweils an einen Arduino Uno angeschlossen. Die 
gewünschte Position des Servomotors, soll per CAN vom Knoten mit dem 
Poti erhalten werden.


Problem:
Die 8 Datenbytes enthalten ein Byte mit dem Wert des Poti. Nur habe ich 
in Flowcode noch keine Möglichkeit gefunden, ein einzelnes Byte 
anzusprechen und zuzuweisen.

Hat jemand eine Idee, oder Erfahrungen, wie ich diesen Wert in Flowcode 
zuweisen kann?

Ich bin über jeden Tipp und Hilfe dankbar! :)

Viele Grüße


Pascal

von Peter D. (peda)


Lesenswert?

Gibt es denn kein Manual und Beispiele zu der CAN-Lib?

Ein Kollege von mir quält sich gerade mit LabVIEW ab. Das sieht auch 
grauenhaft aus und ist total unübersichtlich.
Ich halte grafische Programmierung für etwas komplexere Projekte für 
unbrauchbar. So das Niveau Blink-LED mag ja noch gehen.

von Markus (Gast)


Lesenswert?

>Ein Kollege von mir quält sich gerade mit LabVIEW ab. Das sieht auch
>grauenhaft aus und ist total unübersichtlich.

Hmpf ... ich liebe LabView und wie bei jeder Programmiersprache: Man 
muss es können, damit es gut wird. Das gilt genauso für ein C-Programm. 
Und können kommt mit der Übung ... viel Übung.
Es gibt kein Programm, mit dem man schneller graphische Oberflächen für 
Messtechnik Anwendungen erstellen kann, als mit LabView.

Menschen haben auch unterschiedliche Wege, an Probleme heran zu gehen. 
Das hängt vom Lerntyp ab. Ich greife hier mal zwei heraus:

http://www.stangl-taller.at/ARBEITSBLAETTER/PUBLIKATIONEN/Lernstile.shtml
1
Der visuelle Typ muss ein Bild vor sich haben, also etwa eine schematische Zeichnung einer Kugel mit den entsprechenden Bemaßungen. 
2
3
Der auditive oder akustische Typ kann sich die Formel durch bloßes Hören merken, nämlich indem er den Satz "Radius hoch drei zu nehmen und mit 4/3 Pi multiplizieren" mehrmals vernimmt.
4
5
Quelle: http://www.stangl-taller.at/ARBEITSBLAETTER/PUBLIKATIONEN/Lernstile.shtml
6
© [werner stangl]s arbeitsblätter

von S. R. (svenska)


Lesenswert?

Markus schrieb:
> Es gibt kein Programm, mit dem man schneller graphische Oberflächen für
> Messtechnik Anwendungen erstellen kann, als mit LabView.

Solange man diese Anwendung dann nicht langfristig pflegen muss, ist das 
auch korrekt. Gröbere Anpassungen sind dann grundsätzlich 
Neuentwicklungen, was bis zu einer gewissen Komplexität auch prima 
funktioniert.

Darüber hinaus hat man mit LabView aber sehr schnell sehr gründlich 
verloren.

von Markus (Gast)


Lesenswert?

>Solange man diese Anwendung dann nicht langfristig pflegen muss, ist das
>auch korrekt. Gröbere Anpassungen sind dann grundsätzlich
>Neuentwicklungen, was bis zu einer gewissen Komplexität auch prima
>funktioniert.

Das hängt vom Programmierer und der Struktur des Programms ab, das er 
entworfen hat.
Je besser die Struktur, desto einfacher zu warten.
Und gut strukturieren kann man nur mit Erfahrung.
Das gilt für alle Programmiersprachen.

Den Zustand der "Unwartbarkeit" und das entstehen des Bedürfnisses des 
"Neuschreibens" entsteht bei sehr vielen Projekten die z.B. mit C 
erstellt wurden.

von Pascal W. (Gast)


Lesenswert?

Zunächst danke für die schnelle Antwort!

Ja es gibt ein Manual und das ist stellenweise auch recht gut für einen 
Einstieg geeignet. Das wars dann aber auch. Tiefere Informationen 
bekommt man nicht.

Beispielsweise gibt es innerhalb der Befehle mehrere Parameter, die man 
belegen kann, z.B. "Channel" oder "Index", diese sind manchmal 
selbsterklärend, manchmal allerdings auch nicht und auch ohne Kommentar.
Und genau da liegt mein Problem.

von Pascal W. (Gast)


Lesenswert?

Nochmal anders gefragt:

Weiss jemand was in Flowcode v6 der Parameter "Index" im Befehl 
"GetRxData" macht?

Ist das das jeweilige Byte im Datenfeld der CAN-Botschaft oder mach ich 
was falsch?

von guest (Gast)


Lesenswert?

Pascal W. schrieb:
> Ist das das jeweilige Byte im Datenfeld der CAN-Botschaft oder mach ich
> was falsch?

Sieht so aus. Laut Google:
1
GetRxData
2
3
Returns last received message data byte at position Index.
4
Buffer parameter is currently ignored
5
6
Parameters
7
    BYTE Buffer
8
    BYTE Index
9
10
Return value
11
    BYTE
Quelle: www.matrixtsl.com/wiki

Im Zweifelsfall probier es halt einfach aus.

von guest (Gast)


Lesenswert?

Btw., die haben da auch ein eigenes Forum zu Flowcode. Da bist Du 
eventuell besser aufgehoben:
http://www.matrixtsl.com/mmforums/index.php

Da findet sich u.a. auch sowas:
"The GetRXData macro should only be used after calling the CheckRX 
function."

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.