|   |   |    | Online-Kurs: Grundlagen des 3D-Druck-Designs für Industrieingenieure , ein Kurs
  |  
| 
Autor
 | 
Thema:  Rückkopplung ? (369 mal gelesen)
 | 
 
 
                        MieseBriese Mitglied
 
  
        Beiträge: 4 Registriert: 17.05.2010 
                         | 
                        
                         
                                                 
                        erstellt am: 17. Mai. 2010 17:35       <-- editieren / zitieren -->           Unities abgeben:           
                        
  Hallo ihr Lieben ! Ich habe ein Problem mit ED8 und hoffe ihr könnt mir helfen. Stellt euch vor ich habe 3 Server ( nennen wir sie A, B, C). Auf diesen drei Servern sollen zwei unterschiedliche Zwischenprodukte Z1 und Z2 weiterverarbeitet werden. Diese kommen jeweils von zwei unterschiedlichen Queues X und Y. Während Z1 die Server A,B,C durchlaufen muss, durchläuft Z2 nur B und C. Nun mein Problem: Ich möchte, dass die drei Server max. ein Produktatom bearbeiten, d.h. sobald sich etwas im System ABC befindet, darf keine der beiden Queues etwas abgeben. Ich habe versucht das ganze mit Lock/Unlock zu lösen, aber wenn die beiden Queues ihr Zwischenprodukt zunächst an ein Lock geben, dann schickt das Lock beide Zwischenprodukte in Server A rein, und das soll ja nicht sein (Z2 soll direkt in B2 rein). Eine Möglichkeit den Lock zu zwingen Z1 über Channel 1 und Z2 über Channel 2 zu schicken fand ich leider nicht ... hat ja keine "Send to" Möglichkeiten. um es aufs wesentliche zu reduzieren: Ich suche eine Möglichkeit dem Modell aufzuzwingen "A nimmt erst etwas auf, wenn A,B & C leer sind." Habt ihr da eine Idee ??? Vielen Dank im Voraus    LG Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP  |  
                        
                        PeterPr Mitglied
 
  
  
        Beiträge: 30 Registriert: 09.02.2010 
                         | 
                        
                         
                                                 
                        erstellt am: 18. Mai. 2010 11:53       <-- editieren / zitieren -->           Unities abgeben:            Nur für MieseBriese  
                        
  Hi, eine Lösung: Nimm ein "conditioncontrol", schließ diesen an an Deine Queue (Bei Blokaden musst Du z.B. mit einer schnellen Quelle und Senke trixen) und schreib dies in die "condition expression": (content(atombyname([A],model))+content(atombyname([B],model))+content(atombyname([c],model)))>0 Du Kannst natürlich auch auf die Ausgänge gehen, das ist aber complizierter. Viel Erfolg Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP  |  
                       
   
 | | Werkstudent (m/w/d) Transformationsplanung |  Bei eins glauben wir daran, dass die eigene Arbeit dann Sinn macht, wenn sie verbindet: Menschen, Ideen und die Region, in der wir leben.  Als führender kommunaler Infrastrukturdienstleister gestalten wir gemeinsam die Energiezukunft von Chemnitz und Südsachsen. Mit Verantwortung, Teamgeist und dem Anspruch, das Leben hier für alle ein Stück besser zu machen.  Damit das gelingt, braucht es Menschen, die ihr volles Potenzial entfalten können....  |  | Anzeige ansehen | Studentenjobs, Werkstudent |  
  |  
 
                        MieseBriese Mitglied
 
  
        Beiträge: 4 Registriert: 17.05.2010 
                         | 
                        
                         
                                                 
                        erstellt am: 18. Mai. 2010 15:05       <-- editieren / zitieren -->           Unities abgeben:           
                        
  Hi PeterPr, zunächst mal vielen Dank für die kompetente und schnelle Hilfe =) Deine Lösung hat mich definitv ein schritt weiter gebracht, aber leider auch vor ein neues Problem   . Und zwar wenn in beiden Queues Zwischenprodukte darauf warten bearbeitet zu werden, so schicken auch beide Queues jeweils ein Produkt in das System rein, sobald die condition expression = true wird. Ich habe dann versucht eine zweite conditioncontrol reinzubringen, die nur Queue Y überwacht und die condition expression so verändert: (content(atombyname([A],model))+content(atombyname([B],model))+content(atombyname([c],model))+content(atombyname([Queue X],model))>0 Aber du ahnst es schon, dann hat das System nur noch Produkte aus Queue X bearbeitet und die aus Queue Y kamen nicht zum Zug, weil ihre condition expression quasi nie True wurde.    Ich bräuchte aber so eine abwechselnde bearbeitung. Hast du da ne Idee ??? Vielen Dank !! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP  |  
                        
 | Anzeige.:
  Anzeige: (Infos zum Werbeplatz >>)
    |