Super Video. Klasse. Ich gebe dir vollkommen Recht, dass der Index immer auf die Situation angepasst werden muss. Denn auch ein anderer Entwickler muss sich zurechtzufinden, daher innerhalb eines Projektes wenigstens gleich halten. Verwirrend wird es z.b. innerhalb von Beckhoff selbst. Die Klemmen geben ein Array[0..19] aus, welche dann in einen FB übergeben werden, welches dann wiederum die Ausgabe von [1..20] ausgibt. Sowas macht mich ja wahnsinnig 😅 Ich gebe dir auch Recht, die Grenzen als Konstante zu definieren. Kennt man die obere und untere Grenze nicht oder sind diese variable, gibt es auch entsprechende Lösungen. (LOWER_BOUND / UPPER_BOUND) Bin schon auf deine nächsten Videos gespannt
@theTwinCat-Academy4 күн бұрын
Danke für deinen ausführlichen Kommentar! Ich hatte im November eine Fremdanlage betreuen müssen und da war eine wildes hin & her mit Untergrenzen von [0] und [1] auch innerhalb von Strukturen. Obergrenzen auch scheinbar willkürlich zwischen Zahlen und Constant festgelegt. Also das reale Leben gibt mir Futter für meinen Video-Content.
@rennes19794 күн бұрын
Sehr gutes Video 👍
@theTwinCat-Academy4 күн бұрын
Danke 👍
@Ganorin21 күн бұрын
Ich fand die Videos durchweg spitze! Twinsafe als nächstes thema fände ich toll! Danke für die viele Mühe!
@Marco-x5q2bАй бұрын
Ich wünsche euch allen ein frohes neues Jahr 2025. Vielen Dank für die tollen Videos. Also Wunsch hatte ich folgende Vorschläge als Themen. 1. Eventlogger: Erstellung in der SPS, Aufruf von Events. Anzeige in der HMI 2. Analyse bei Problemen einer SPS. Hier die HMI als Anzeige der Hardwarestruktur und Fehleranalyse. DC Analyse und Frames Kollision. Reduzierung der Durchlaufzeit, Richtung Echtzeit. 3. Allgemeine HMI. Große Datenstrukturen anzeigen lassen. UserControls, ... 4. Unter 2026 gibt es die Möglichkeit der automatischen Codedokumentation. Wie wird dies gemacht, eingerichtet, Kommentare an den Codes, usw. Danke im voraus.
@theTwinCat-AcademyАй бұрын
Ja Danke für deine Vorschläge :-) 1. Steht auf ToDo :-) 2. und 3. -> da gibt es bei KZbin eine Oleg Müller .. muss ich schauen ob sich das lohnt. Weil er macht da viel zu dem Thema. 4. mehr "4026" ist für 2025 gesetzt beste Grüße
@benutzer1734Ай бұрын
Danke für die super Videos welche sehr informativ sind und auch aus der Erfahrung erzählen. Ich finde es gut das die Themen TwinSafe und Motion demnächt auch kommen. Gerade bei TwinSafe gibt es wenige Videos bei KZbin. Interassant wäre es zu wissen wie man die Softwarestruktur in einem großen SPS Programm aufbaut. Wie baut man Sachen wie Funktionsgruppen, Handfunktionen und Abläufe in einem SPS Programm auf, und wie arbeiten diese dann in einer Machine zusammen?
@theTwinCat-AcademyАй бұрын
Danke für das Lob! Ich wollte meinen Kanal nicht technisch "Trocken" machen, davon gibt es genug. Die praktischen Erfahrungen, Mindset und meine Persönlichkeit will ich mit einfließen lassen. Die Punkte sind alle notiert :-).
@GerhardHolzer-me3qvАй бұрын
Tolle Videos mach bitte weiter so.
@theTwinCat-AcademyАй бұрын
Danke für die lobende Worte :-)
@lewedeyАй бұрын
Ich wünsche allen einen guten Rutsch ins neiue Jahr. Die Themen die du genannt hast hören sich alle interessant an. Könntest du bitte auf deine Liste auch noch die Themen IO_Link und UPC UA mit aufnehmen.
@theTwinCat-AcademyАй бұрын
Steht jetzt in der Liste :-)
@kbacsАй бұрын
Danke für deine Videos im letzten Jahr. Mich würden folgende Themen interessieren: - Best practice zu TwinSAFE Architekturen und der Ansteuerung / Quittierung aus der PLC heraus - Inbetriebnahme von 48 VDC Servomotoren (bpsw. ELM72xx). Insbesondere die Regleroptimierung bei der Inbetriebnahme von vielen Antrieben würde ich sehr interessant finden - Falls du es nutzt: Erstellung von Framework Controls für TcHMI - Vertiefung / Detaillierung OOP - OPC UA - Detaillierte und wiederverwendbare EtherCAT Überwachung Viele Grüße und ein erfolgreiches und gesundes neues Jahr!
@laylatrix22Ай бұрын
Thank you for your videos. TwinSAFE would be very appreciated. I need to re-watch your 48V Servo videos because I've recently got many of such motors with cables and actuators + 5-6 driver-cards. One of my next year resolution is to deep dive into this by taking the time and building some machine from my huge hoard of parts.
@theTwinCat-AcademyАй бұрын
Yes, thank you for your feedback. TwinSAFE is quite complex if you want to do it right and you can't do it in a 25 minute video. I probably need 4 x 30 minute videos :-D.
@gotzjacob4159Ай бұрын
Hast du mal über eine alternative Schriftart für deinen ST Code nachgedacht? z.B. Jetbrain Mono
@theTwinCat-AcademyАй бұрын
In TC2 hatte ich mit den Schriftarten viel herumexperimentiert. Weil mit den kleineren Bildschirmauflösungen vor 15 Jahren war das auch irgendwie notwendig. Seit gut 10 Jahren habe ich eigentlich nur noch => 2.7k Auflösungen und habe das Thema etwas aus den Augen verloren. Bei 40 Zoll 4k 100% Schriftgröße ist so unendlich viel Platz. Aber guter Hinweis!! Ich werde mich mal wieder damit beschäftigen. Vielleicht gibt es ja ein paar Settings, die ich dann nicht mehr missen möchte. Absolut berechtigter Hinweis.
@Marco-x5q2bАй бұрын
Danke für die Einführung und Erklärung. Pragmas Attribute sind für mich sehr wichtig geworden Es lohnt sich hier Mal in die Doku zu schauen.
@theTwinCat-AcademyАй бұрын
Ja das war die Idee von dem Video. So manchen User da draußen aufmerksam zu machen sich mit dem Thema zu beschäftigen. Software ist ja kein statisches System, es gibt ständig neue Entwicklungen.
@GanorinАй бұрын
Danke für die Mühe, sehr gute Übersicht
@theTwinCat-AcademyАй бұрын
Ja Danke, aber das Video hat im Gegensatz zu anderen Videos nicht so viel Mühe gemacht :-)
@lewedeyАй бұрын
Vielen Dank fürs vorstellen dieser Funktion
@theTwinCat-AcademyАй бұрын
Danke für die Blumen :-)
@rennes1979Ай бұрын
Hallo Frank, tolle Videos mit verdammt Guten, praxisnahen Inhalten. Vielleicht gibt es ja auch mal ein Video wie man sauber die jeweiligen IF, CASE, RETURN bzw. Exit Anweisung im Programmaufbau einsetzt.
@theTwinCat-AcademyАй бұрын
Vielen Dank für das Lob, es gibt viele Formen bei den Tutorial's hier auf KZbin, aber ich bin über 30 Jahre im Job und wollte den Bezug zur Realität mit einbinden. Viele "Erklärvideos" haben immer so ein "Uni Vorlesungs Charakter". Wenn man einen Sachverhalt in Beziehung zur Realität setzt, ist es einfach besser zu verstehen. IF, CASE, RETURN bzw. Exit Ja gute Anregung von dir :-) werde ich mit auf ToDo setzten.
@lewedeyАй бұрын
Vielen Dank für das Video, hättest du hier noch weiter beispiele auf was man sonst noch achten sollte bei der Progr3ammierung.
@theTwinCat-AcademyАй бұрын
Zum Thema Code Review könnte ich sicher ganze Wochenseminare abhalten. Aber das ist ein kontroverses Thema, ich sehe es an den zwei Dislike :D. Es gibt viele Menschen die "Anregungen zum besser werden" als persönliche Kritik verstehen. Aber jeder Spitzensportler bekommt jeden Tag von seinem Trainer Anregungen zum besser werden, sonst wäre er kein Spitzensportler geworden und wäre in der Kreisliga hängen geblieben. Aber ich werde das Thema sicher noch in einem Video noch mal aufgreifen. Auch wenn es dann wider ein paar Dislike gibt :D .. wie beim Thema Global Variablen ;-)
@lewedeyАй бұрын
Vielen Dank für die Tips, gern mehr davon.
@theTwinCat-AcademyАй бұрын
Danke fürs Feedback!
@Marco-x5q2bАй бұрын
Danke für das Video 😁, wieder was gelernt. Scope ist bei der Fehlersuche echt wichtig. Vielleicht kannst du ja auch mal ein video machen, wie man effektig das scope in die HMI einbindet. Weist du denn, ob man mit dem Scope auch eine Maskenfunktion abbilden kann? Vergleich eines Signals innerhalb eines Bandes? Hier habe ich leider noch nichts gefunden und aktuell einen Anwendungsfall. Laut Beckhoff soll dies wohl möglich sein.
@theTwinCat-AcademyАй бұрын
Aus meiner Analyse heraus kann man das Scope für folgende vier Use Case einsetzen. 1. Zur Fehleranalyse, das wird sicher der Standardfall für die meisten Benutzer sein. 2. Zum Einstellen von Maschinenparametern (Adjustment), Achsparameter, Temperaturregler oder ermitteln von korrekten Prozessparametern. 3. Völlig unterschätzt, zum Verifizieren von entwickelter Software. Also schauen, ob die Software das macht, was sie soll! 4. Zu Protokollzwecken, Zyklusoptimierungen, verfahrenstechnische Optimierungen, Prozesskurven .. damit man auch nach zwei Jahren nachsehen kann. Das Thema "Hüllkurve" habe ich vor fast 15 Jahren für Mercedes mal realisiert, noch in TC2 aber in der PLC. Im 10µs Raster Daten in ein Array geschrieben und dann eine "lower" und "upper" Curve generiert, die dann als Prozesskurve verwendet wurde. Vom Scope gibt es noch eine Pro Version, ich sage immer: "auch das Scope kann schon ein Job sein" .. so komplex sind die Möglichkeiten.
@GerhardHolzer-me3qvАй бұрын
Für die Hüllkurve schau dir TwinCAT Analytics an. Dort kann man das machen
@Marco-x5q2b2 ай бұрын
Ein wirklich schones Thema. Ich habe auch den Wandel durchgemacht. Spätestens mit dem Thema OOP wird man die GVL minimieren. Ein Thema sehe ich noch bei der HMI. Hier werden die HMI Variablen teilweise auch als GVL interpretiert. Andere packen alles in eine komplette Struktur. Auch hier muss man viele Erkenntnisse erst gewinnen, und auch einen wandel durchlaufen, um das Optimum herauszuholen, ladezeiten zu optimieren, uvm. Alles hat seine Daseinsberechtigung. Solange der Programmierer seinen Stil durchzieht ist es auch für Externe gut lesbar 😅
@theTwinCat-AcademyАй бұрын
Beim Thema GlobalVariablen bin ich schon vor 20 Jahren "eingenordet" worden, von Aussen, durch Schmerz :D. Software kapseln und die GVAR's erledigen sich ganz von allein.
@TheRealZitroX2 ай бұрын
Ich empfehle dringend das Beschränken von dem ständigen Verschachteln. Wenn welche vorhanden sind, sollten die `If-Statements` negiert werden oder `Guard-Clauses` Verwendung finden. Des Weiteren sollten Funktionen ab 30 oder spätestens 40 Zeilen Kot genutzt werden, um die Les- und Wartbarkeit zu erhöhen.
@TheRealZitroX2 ай бұрын
7:00 gibt es in der Sprache Funktionen, wenn ja, weshalb werden diese nicht in den "if - fällen" verwendet? Das sieht nur unübersichtlich aus, wie es hier geschrieben ist.
@theTwinCat-Academy2 ай бұрын
Verstehe nicht ganz was du meinst, man könnte im IF ein "Action" aufrufen, habe ich mal ein Video zu gemacht, aber die Idee vom Video war zu zeigen, das jeder von uns sich weiter entwickelt, wenn ein Mentor Anregungen gibt zum Nachdenken
@TheRealZitroX2 ай бұрын
Der fakt, dass light und darkmode verwendet werden, bringt mich zum kochen...
@theTwinCat-Academy2 ай бұрын
ja in der 4026 geht der Darkmode immer noch nicht richtig :D zu mindestens in meinem letzten Test
@Mooooov08152 ай бұрын
Als Backend Entwickler in der Web Welt bin ich zugegebenermaßen relativ überrascht das ein Codereview im Maschinenbau nicht gängige Praxis ist. Wir iterieren relativ schnell (mehrere Deployments pro Woche) und können wenn wir mist gebaut haben auch sehr schnell zurückrudern, trotzdem machen wir uns die Mühe für jeden Pullrequest ein ordentliches Codereview anzugehen. Nicht nur um Designfehler oder methodische Fehler zu erkennen, sondern um langfristig auch die Wartbarkeit der Software zu verbessern. Während es viele Leute gibt die gerne Nitpicking im Review Betreiben ist es gar nicht so verkehrt einfach noch mal nachzufragen wenn einem beim Code des Kollegen dutzende Fragezeigen im Gesicht geschrieben stehen. Ich bin daher überrasch da IT im Maschinenbau ja ein ewas trägeres Feld ist, da letztendendes ja vor allem in der physischen Welt viel dran hängt.
@theTwinCat-Academy2 ай бұрын
Ja danke für deinen ausführlichen Kommentar. Ja gut, im Maschinenbau gibt es auch in viele Varianten. Es gibt reinen Serienmaschinenbau, da sieht die Welt sicher etwas besser aus. Aber die Stärke des deutschen Maschinenbaus war immer die Spezialitäten der Kunden auch abbilden zu können. Selbst wenn die Maschine mechanisch sehr identisch aussieht, will jeder Kunde dann doch ein etwas anders Produkt damit herstellen. Man muss mit unserer Software halt Physik steuern. Z. B.: eine Folienbeschichtung, verwendet der Kunde andere Folien, Basisträger, mit anderen, Harzen, Härter, Primer ... schon sitzt man als Inbetriebnehmer für Monate beim Kunden und bringt den Prozess zum gewünschten Ziel. In dem Use Case braucht man keine Coderevue. Aber ich kenne so viele Fälle wo ein Mitarbeiter ein Projekt auf den Tisch bekommt und dann "mache fertig". In der Regel fehlt es an Zeit und auch an Manpower. Die es tun könnten sind beim Kunden vor Ort. In meiner Branche ist es durchaus üblich, das man nur zur Weihnachtsfeier mal das ganze Team mal zusammen hat. Deswegen liegt nach meiner Einschätzung da auch so ein großes Verbesserungspotenzial.
@MrBartPawlowski2 ай бұрын
Very good sereis ! , I watch with eng subtitles as I don't understund German. Thanks
@theTwinCat-Academy2 ай бұрын
Yes, thank you for the praise. I decided to make my channel in German for two reasons. 1. My market is mainly around Germany 2. I can speak more flowery in my native language, although I can also speak English very well. But there is AI translation nowadays :-)
@matthiasdorrie94323 ай бұрын
Vielen Dank für das tolle Video! Wie sieht es aber aus mit der Komunikation von TC3 zu TC2? Mit dem Beispiel funktioniert die Verbindung gut, nur die gelesenen Daten stimmen leider nicht.
@theTwinCat-Academy3 ай бұрын
@@matthiasdorrie9432 ja das Video kommt auch noch, Byte Alignment , ich will die Videos nicht immer so lang machen, was mir sowieso nicht gelingt, ich wollte hier nur die Neugier wecken, ADS com zu machen 🙂
@matthiasdorrie94322 ай бұрын
@@theTwinCat-Academy Ich finde die Videos passend und sehr gut😄! Dank ihres Tipps (Byte Alignment), konnte ich das Problem heute lösen, juhu! Aber natürlich freue ich mich schon auf ein Video dazu😃 Ich wünsche Ihnen ein schönes Wochenende!
@theTwinCat-Academy2 ай бұрын
Ja danke für das Lob. Ja vielleicht kannst du meinen Kanal empfehlen :-). Brauche noch ein paar Follower wegen des KZbin Algorithmus.
@lewedey3 ай бұрын
Vielen Dank für den Denkanstoss
@theTwinCat-Academy3 ай бұрын
Ja Danke, ich glaube, Sie sind mein aktivster Follower.
@nogga77163 ай бұрын
Super informativ, vielen Dank!
@theTwinCat-Academy3 ай бұрын
Danke für das Lob!
@MrBartPawlowski3 ай бұрын
nice!
@lewedey4 ай бұрын
Vielen Dank für´s vorstellen dieser Funktion. 👍
@lewedey4 ай бұрын
Ich hätte noch ein Frage bezüglich öfter benötigter FBs (z.b. Zylinder) werden diese von ihnen immer in die neuen Projekte kopiert oder haben sie sich hier eine eigene library erstellt.
@theTwinCat-Academy4 ай бұрын
Nein ich habe keine Automation_Consult.lib Also im Normalfall beginne ich alle 18 Monate ein neues Projekt. Dann fange ich prinzipiell mit einem "weißen Blatt" Papier an. Schaue ich mir jedes Element in der Software an, ob es noch Verbesserungen gibt. "Hat sich bewährt" gilt nicht so recht bei mir. Weil sonst würden wir noch mit Fell um den Bauch durch den Wald rennen. Ich experimentiere dann auch immer wieder mit anderen Lösungen. Gut der Zylinder FB ist jetzt ziemlich fix die letzten Jahre. Aber ansonsten gibt es fast immer Verbesserungen.
@lewedey4 ай бұрын
@@theTwinCat-Academy vielen Dank für die ausführliche Erklärung
@lewedey4 ай бұрын
Vielen Dank für die ausführliche Vorstellung.
@theTwinCat-Academy4 ай бұрын
Danke :-) In der Vorbereitung des Videos dachte ich, das habe ich in 10 Minuten erklärt. Es ist dann doch ausführlicher geworden. Aber oberflächlichen Content mag ich nicht.
@vladimirv.36935 ай бұрын
Ich habe schon einiges von Video ausprobiert und freue mich auf die andere Tipps für Inbetriebnahme und Fehlersuche. Vielen Dank dafür!!!
@theTwinCat-Academy5 ай бұрын
Ja danke für den Kommentar, kannst auch mal in meinen anderen Videos hereinschauen. Ich versuche in meinen Videos die Jahrzehnte langen Erfahrungen einzubringen.
@gotzjacob41596 ай бұрын
Ich würde für die Praxis den Sicherheitsmodus empfehlen. Dieser kann irgendwo in den Optionen aktiviert werden. Dadurch wird unter anderem beim Betriebsartenwechsel und beim Setzen von Breakpoints eine Sicherheitsabfrage (Wollen Sie wirklich ...) erzeugt. Diese Funktion war auch in TwinCAT2 schon verfügbar.
@lewedey6 ай бұрын
Hallo vielen dank für den einblick. Könntest du bitte deine weiteren Einstellungen welche nützlich sind auch noch erklären. Des weiteren wäre es sicher hilfreich wo man in dem ganzen Einstellmenü der Tastatur die entsprechenden Funktionen findet.
@theTwinCat-Academy6 ай бұрын
Danke für deinen Kommentar, ja kommt auf To-do-Liste. Ich wollte auch dieses Mal ein etwas kürzeres Video machen, sonst sind es schnell 30 Minuten und das schaut dann kaum einer. Mein Kanal hat noch sehr wenig Kommentare und die sind eigentlich wichtig, damit ich den Content verbessern kann.
@olegmueller47546 ай бұрын
Sehe ich auch so :)
@theTwinCat-Academy6 ай бұрын
Ja danke für deinen Kommentar, ich bin froh, dass ich nicht ganz allein auf dieser Welt bin :D.
@laylatrix226 ай бұрын
Thank you much for these videos. Reading and trying to understand code from experienced programmers is very helpful after learning the language theory. I have ~5-10pc TC2 and TC3 computers removed from professional machines with programs still on them. Also found some good examples from Festo like "CMMP_Ethercat" application note.
@lewedey6 ай бұрын
Vielen Dank für den Einblick, gern aber noch ausführlicher
@theTwinCat-Academy6 ай бұрын
Danke für das Feedback. Ich bin immer unsicher, ob die langen Videos überhaupt zielführend sind. Aber komplexe Dinge kann man in 5 Minuten eigentlich nicht vernünftig vermitteln. Aber der kurzlebige mediale Konsum wird ja gesellschaftlicher immer schlimmer.
@lewedey6 ай бұрын
@@theTwinCat-Academy bei diesen Themen ist es meist besser etwas ausführlicher zu erklären damit man auch die Chance hat es zu verstehen. Vielen Dank
@Gindi47116 ай бұрын
Bei 10 Aufrufen wirst du auch nicht viel festellen. Bei meiner aktuellen Applikation habe ich ca. 2-3K Arrayzugriffe pro SPS Zyklus (je nach Konfiguration auch etwas mehr). Mit Checkfunktionen kommen da die ARM A8 selbst bei 10ms Zykluszeit schon bald an ihre Grenzen. Dabei ist die Checkfunktion schon sehr gut optimiert dass diese im Standardfall nur ein If Statement enthält. Aber es ist immerhin ein Function call und der dauert etwas
@theTwinCat-Academy6 ай бұрын
Danke für deinen Kommentar, also ich bin sicher auch ein exzessiver Nutzer von "FOR. Wenn ein Element zweimal vorhanden ist, wird schon ein Array gebaut. Habe gerade mal in ein aktuelles Projekt geschaut ~ 900 Aufrufe, ein ganz großer Teil davon ist in FBs verwendet, die dann x-mal aufgerufen werden. Aber da bist du mir eine Erfahrung reicher, weil du große die Applikationen auf kleinen Embedded Systemen realisierst. In der Regel habe ich es mit 20 bis 50 NC-Achsen zu tun, auch schon vor 15 Jahren. Solche Systeme laufen dann auf performanten IPC's und da sind die Achsen die Ressourcenfresser. Aber die Check-Funktionen sollten benutzt werden, damit man erkennt, wenn man wieder Blödsinn gemacht hat. Ich habe noch ein CX9020, damit werde ich noch mal ein Versuch machen, was das so an Leistung frisst .
@sebastianheibl6 ай бұрын
Klasse Video um einfach zu wissen wie was funktioniert und in das ganze Thema Scope mal reinzukommen und anzufangen. Danke
@theTwinCat-Academy6 ай бұрын
Ja Danke :D .. dann schau dir aber noch das Video 002 an. Das ist mehr Mindset Content, gibt dir sicher zusätzliche Impulse für die Wichtigkeit zur Benutzung des Scope. Das Scope ist ein absoluter Produktivitätsbooster.
@theTwinCat-Academy6 ай бұрын
Schaue auch mal in die anderen Videos. Dümmer wird man nicht von :D
@lewedey8 ай бұрын
Vielen Dank für zeigen der Version
@theTwinCat-Academy8 ай бұрын
Danke dafür 🙂
@kbacs8 ай бұрын
Ich kann nur empfehlen, TODOs über Pragmas als Warning zu erstellen. Das erscheint dann direkt beim Kompilieren und man vergisst am Ende definitiv nicht den Blick in die Lesezeichen o. ä. Zudem kann das Pragma direkt an die Bezugsstelle im Code gesetzt werden. Beispielsweise: {warning 'TODO: I am a ToDo Message'} Das ganze funktioniert natürlich auch schon unter der 4024.
@theTwinCat-Academy8 ай бұрын
Danke :-) .. cooler Hinweis, werde ich auf jeden Fall ausprobieren. Das war ja eigentlich auch ein Ziel von meinem Kanal, Feedback von draußen zu bekommen. Leider ist da bis jetzt nicht viel passiert, aber so ein Nischenkanal braucht einfach Zeit, bis der im Ranking nach oben kommt.
@kbacs8 ай бұрын
Gerne. Ich persönlich finde, dass sich dein Aufwand für diesen Kanal aber total lohnt. Vor allem, da du nicht nur absolute Basisthemen behandelst, sondern auch fortgeschrittene und praxisnahe Themen durchgehst. Sicherlich übernimmt man nicht alles einfach so, aber es regt zum Denken und Hinterfragen an.
@theTwinCat-Academy8 ай бұрын
Danke für das Kompliment, so richtige Einsteigertutorial wollte ich nicht machen. Davon gibt es genug und das war mir auch zu trivial. Ich will schon meine 30 Jahre Erfahrung mit einbringen.
@Runtimevic8 ай бұрын
Hello, thanks for the video, could you upload the project to a repository? or it's from work and you can't put it...
@theTwinCat-Academy8 ай бұрын
yes, it's a customer project, I can't put it online :-I .. but I have a few videos planned with parts of my personal framework, I will then make these available so that a discussion can arise
@GerhardHolzer-me3qv9 ай бұрын
Du hast da jetzt die Echtzeitauslastung betrachtet. Schau mal im Task selber nach. Dort sieht man die aktuelle zykluszeit. Und dort siehst du auch das die zykluszeit länger wird.
@theTwinCat-Academy9 ай бұрын
OK, guter Hinweis, das schaue ich mir mal an. Aber solange ich in der Echtzeitauslastung nicht viel sehe, ist es für mich ja nicht wirklich relevant. Steigt die Zykluszeit spürbar, dann steigt ja auch die Echtzeitauslastung. In meinen typischen Use Case fressen gefühlt die NC Achsen immer 50% der Leistung und das EtherCAT Prozessabbild per 1ms. Code selbst spielt eigentlich nur eine untergeordnete Rolle. Aber ich werde das mal in einer realen Anlage testen :-).
@lewedey10 ай бұрын
Wo sehen sie den Vorteil das man die Variablen nicht global sondern auf Programm-eben deklariert. Des weitern muss man seit twinCat 3 nicht mehr darauf achten das jede Globale Variable nur 1 Mal vorkommt, wenn man unterschiedliche globale Einheiten bildet. Ich verwende teilweise globale Variablen zusammen mit Struktur. Haben sie das auch schon Mal gemacht?
@theTwinCat-Academy10 ай бұрын
Für die Beantwortung dieser Frage könnte ich ein zweitägiges Wochenendseminar machen. Aber wenn man Software ganz allgemein gesagt: in Module kapselt, entstehen auch keine globalen Variablen. Wenn Software (ganz allgemein gesagt) gekapselt ist, dann ist sie besser lesbar, besser portierbar ... Aber dazu müssen in der Software vertikale Strukturen aufgebaut werden. Aber das ist nicht mit ein paar Sätzen in einem Kommentarfeld zu erklären. Ich habe mich in den letzten Jahrzehnten in der Softwareentwicklung immer an den "Hochsprachen-Jungs" orientiert. Es muss ja ein Grund haben, das wir heute in der CoDeSys Welt vererben (+ die anderen Tools) können.
@jaybee4131810 ай бұрын
Mein erstes TwinCat Projekt habe ich vom Kunden übernommen. Dort waren sämtliche Variablen global und das war vom Kunden so vorgegeben. Für jeden Zylinder gab es einen separaten FB. Das war für mich als Einsteiger in die PLC-Programmierung eine riesige Herausforderung. Ich habe das Projekt über 6 Jahre begleitet und viel Überzeugungsarbeit leisten müssen, um wenigstens die FBs so umbauen zu dürfen, dass sie als FB mehrfach verwendet werden können. Danke Dir für diesen Kanal, tolle Arbeit.
@theTwinCat-Academy10 ай бұрын
Danke für dein Feedback, das ist zu 100 % meine Lebenserfahrung. Es wird viel um OOP herum diskutiert. Aber meine Lebenserfahrung ist in weiten Teilen viel weiter unten angesiedelt. Schon kluges anwenden eines FB wäre ein wichtiger Schritt. Allein zum Thema Zylinder könnte ich ein Wochenend-Seminar abhalten, obwohl es ganz einfach ist.
@lewedey10 ай бұрын
Echt schöne Erklärung. Gerne mehr davon.
@theTwinCat-Academy10 ай бұрын
Danke für das Lob!
@lewedey10 ай бұрын
Bitte mehr von der Objekt Programmierung
@theTwinCat-Academy10 ай бұрын
Ja kommt, die "Community" muss aber Geduld haben! Ich bin kein Berufs-KZbinr, ich mache das so nebenbei. Meine Videos sind schon zeitaufwendig in der Produktion. Licht- und Ton-Setup, Content-Erstellung, Schnitt ...
@lewedey10 ай бұрын
Bin auf die weiteren Videos zum scope gespannt.
@theTwinCat-Academy10 ай бұрын
Ich habe es mal auf die ToDo-Liste getan, ein Video aus zum Thema Scope Anwendung in einem realen Szenario. Habe aber bestimmt noch 20 Videos auf der ToDo, aber ich werde dazu mal eins machen.
@lewedey10 ай бұрын
Bitte Mal Anwendung zeigen.
@theTwinCat-Academy10 ай бұрын
Interessantes Feedback, ich dachte das Scope erledigt sich mit zwei Videos. Einmal ein Video so zum Thema Mindset, es auch wirklich zu benutzen! Zweitens ein Video zur Bedienung im Detail.
@gotzjacob415910 ай бұрын
Hallo, ich möchte zunächst ein kurzes Lob aussprechen. Deine Videos sind äußerst informativ, ruhig und unterhaltsam gestaltet. Es ist offensichtlich, dass du über viele Jahre Erfahrung im Bereich der Automatisierung verfügst. Die praxisnahen Beispiele lockern das Gesamtbild stets auf und machen den Inhalt noch zugänglicher. Obwohl ich mich hauptsächlich in der Siemens-Welt bewege, werde ich definitiv weiterhin deine Videos verfolgen. Mach weiter so!👍
@theTwinCat-Academy10 ай бұрын
Ja, danke für den Kommentar. Ich habe schon recht viele Personen mit TwinCAT auf den Weg gebracht und bei den Schulungen ist dann eigentlich vor vielen Jahren schon die Idee entstanden, das auch auf KZbin zu machen. Ich habe auch noch Videos in der Pipeline, die von Inhalt gar nicht auf TwinCAT beschränkt sind. Manches ist auch in TIA gültig - SPS Software ist halt SPS-Software. Die Videos sind aber schon aufwendig, sodass der Kanal noch etwas Zeit braucht.