|
|
Summe bilden und zählen bis 15 |
|
Mati2 |
Forum-Newbie
|
|
Beiträge: 3
|
|
|
|
Anmeldedatum: 09.05.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 18.05.2009, 16:13
Titel: Summe bilden und zählen bis 15
|
|
Hallo zusammen,
ich möchte ein kleines Programm schreiben, das die Summe dreier Eingänge berechnet und gleichzeitig bei jedem neuen Summenwert ein
Zähler mit 1 inkrementieren bis 15 (0 <= Zähler <= 15).
ich wollte das Programm mit S-function Builder realisieren:
ich habe 3 eingänge u0[0], u1[0] und u2[0] und zwei Ausgänge
Summe und Counter definiert.
im Outputs Fenster sieht es folgendermaßen aus:
y0[0] = u0[0];
y1[0] = u1[0];
y2[0] = u2[0];
die Summe konnte ich schon berechnen mit Summe[0] = u0[0] + u1[0] + u2[0] aber wie ich bei jedem neuen generierten Summenwert mit 1 hochzählen kann ist mir leider bis jetzt nicht gelungen.
daher meine Frage an euch wie ich das angehen kann? und vielen Dank im voraus
Mati2
_________________
MfG
Mati
|
|
|
|
|
amin |
Forum-Anfänger
|
|
Beiträge: 45
|
|
|
|
Anmeldedatum: 11.05.09
|
|
|
|
Wohnort: Karlsruhe
|
|
|
|
Version: R2009b
|
|
|
|
|
|
Verfasst am: 19.05.2009, 15:00
Titel:
|
|
Hallo,
bin mir nicht sicher ob du das so meinst ?
|
|
|
Mati2 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 3
|
|
|
|
Anmeldedatum: 09.05.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.05.2009, 22:05
Titel:
|
|
Hallo,
doch so will ich das machen. aber wie mache ich eine Bedingung, dass bei
jedem neuen Summenwert Counter mit 1 inkrementieren?
Gruß Mati2
_________________
MfG
Mati
|
|
|
rocket |
Forum-Anfänger
|
|
Beiträge: 37
|
|
|
|
Anmeldedatum: 29.04.09
|
|
|
|
Wohnort: Essen
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 25.05.2009, 12:08
Titel:
|
|
Das wird auch nicht so gehen, da beim Verlassen deiner Funktion die Werte wieder auf 0 gesetzt werden, du muss mit dem Befehle
arbeiten, der speichert dir die Werte auch beim Verlassen der Funktion...der Ansatz
ist schon gut, nur die Variable X muss du als persistent deklarieren, dann wird es auch klappen....
rocket
|
|
|
Titus |
Forum-Meister
|
|
Beiträge: 871
|
|
|
|
Anmeldedatum: 19.07.07
|
|
|
|
Wohnort: Aachen
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 25.05.2009, 12:59
Titel:
|
|
Hallo,
S-function builder? Also in C? Dann wird der vorherige Vorschlag leider nicht funktionieren.
Für den S-Function builder: Du musst einen Diskreten Zustand anlegen (Number of discrete states = 1). Und auf der entsprechenden Seite (Discrete Update oder so ähnlich) muss dieser jeweils um 1 erhöht werden.
Nebenbei: warum als S-Function? Mit Simulink-Blöcken müsste das ziemlich einfach sein, oder?
Ciao,
Titus
|
|
|
rocket |
Forum-Anfänger
|
|
Beiträge: 37
|
|
|
|
Anmeldedatum: 29.04.09
|
|
|
|
Wohnort: Essen
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 25.05.2009, 15:32
Titel:
|
|
ne in embedded matlab...klappt hervoragend...
hab sowas noch nie gesehen in Blöcken, gibt es so ein Zählerblock???
|
|
|
Titus |
Forum-Meister
|
|
Beiträge: 871
|
|
|
|
Anmeldedatum: 19.07.07
|
|
|
|
Wohnort: Aachen
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 27.05.2009, 09:04
Titel:
|
|
Hallo,
@rocket: in Embedded MATLAB ist das relativ einfach (wie Du geschrieben hast, mit persistent), allerdings sah die Frage des OP so aus, als ob er in C das machen wollte, daher meine Anmerkungen.
Und ja: entweder zu Fuss (Unit Delay Ausgang mit Constant=1 addieren und als Eingang vom Unit Delay nehmen), oder der Block "Counter Limited" aus der Sources Bibliothek.
Titus
|
|
|
rocket |
Forum-Anfänger
|
|
Beiträge: 37
|
|
|
|
Anmeldedatum: 29.04.09
|
|
|
|
Wohnort: Essen
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 27.05.2009, 11:16
Titel: ...
|
|
@titus...stimmt das hatte ich übersehen das er es mit C schreiben wollte...
soll er es doch einfach machen mit embedded,ist eh besser meiner meinung nach
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|