Zum Inhalt springen

need-some-blood

Mitglieder
  • Gesamte Inhalte

    170
  • Benutzer seit

  • Letzter Besuch

Beiträge von need-some-blood

  1. Hallo,

    nur damit ich die Aufgabenstellung richtig verstehe.

    Du möchtest eine Kamera an einem Roboter installieren und die Robotersteuerung nutzen um das Bild auszuwerten. Der Roboterarm\ die Kamera fährt dann über verschiedene Objekte (oder das Objekt unter der Kamera) und du möchtest kontiniuirlich Bilder aufnehmen. Sobald du das passende Bild aufgenommen hast möchtest du dem Roboter den Schwerpunkt des Objekts als X\Y-Koordinaten mitteilen, damit er dort angreifen kann, richtig?

    Gruß

  2. Öhm, also als ich damals mit dem Programmieren angefangen habe, MUSSTE ich zur jeder Aufgabe ein Struktogramm erstellen. Wenigstens nen Pseudocode. Ich denke das sollte hier der erste Schritt sein. Denn so leid es mir tut, aber ich werde das Gefühl nicht los, das die Psycho~zicke gar nicht weiß wie sie das Problem angreifen soll. Wenn das klar ist, dann kann sie anfangen mal über die einzelnen Befehle nachzudenken. Also Psycho~zicke versuche doch bitte mal unabhängig von irgendwelchen Befehlen mit deinen Worten zu beschreiben wie du das Problem lösen würdest.

    MVG

    need-some-blood

    PS:

    Hier elementare Grundlagen

    Nassi-Shneiderman-Diagramm - Wikipedia

    Da auch

    Pseudocode - Wikipedia

    und der sowieso

    Programmablaufplan - Wikipedia

  3. Hallo,

    also wenn ich das richtig verstehe möchtest du über eine USB-Webcam ein Boot nachts (voll)automatisch fahren, lassen. Ist das richtig?

    Hierfür gibt es schon interresante Produkte. Dort ist auch die Hardware wesentlich näher an den Anforderungen gestaltet.

    Siehe hier. Auch bietet die SDK die Möglichkeit bestimmte Bereiche ständig zu überwachen.

    @ Algorithmik

    Eine verhältnissmäßig leichte aber nicht unbedingt empfehlenswerte (da langsam und auch nicht wirklich elegant) Möglichkeit wäre die Bildpunkte über eine Blob-Analyse zu zählen. Dabei könnten Spiegelungen des Wassers über entsprechende Filter und Mindestgrößen kompensiert werden. Wird ein Blob mit einer bestimmten Größe gefunden, wird das entsprechende Bild mit dem nachfolgendem Bild verglichen. Ist der Schwerpunkt des Blob im Folgebild nach links verschoben und der Blob größer, kommt dir das Objekt entgegen und du musst nach rechts ausweichen.

    Nur so als Idee, wenn es denn bei einer BV-Lösung bleiben soll.

    Wesentlich empfehlenswerter wäre eine messende Sensorik. Egal ob

    - Radartechnik (würde ich nicht unbedingt einsetzen wollen, da besonders kleine symmetrische Objekte Schwierigkeiten machen) oder

    - Ultraschall (hier könnte es Schwierigkeiten bei Tieren geben, da das Fell Ultraschall absorbiert. Auch ist die Entfernung zu gering), bzw.

    - Lasermesstechnik (Ein entsprechendes Lasermessgerät mit Überwachungs & Schutzfeld sollte es da tun)

    Die Systeme sind wesentlich besser dafür geeignet und preislich nicht wesentlich teuer, wenn man den hohen Programmieraufwand beachtet der auf dich mit einem BV-System zu kommt.

    MVG

    need-some-blood

  4. Hmm...

    OK. Der dependency walker gibt Klotzkopp recht. Die Funktion ist nicht vorhanden. Also haben wir die Fehlermeldung nochmal händisch bestätigt.

    Jetzt Ursachensuche. Morgens früh ging noch alles bestens. Dann habe ich über den Taskmanager den Rechner neu gestartet weil er nicht vernünftig reagiert hat. Dabei hat er Word beendet.

    Erst später ist mir dann der Fehler aufgefallen.

    Die Anwendungen hat keiner geändert.

    Nen Virus würde ich erstmal Ad Hoc ausschliessen. Da ich mir nichts runter geladen habe. Keine Mails mit anhängen gekommen sind und mein Virenscanner aktuell ist. Wobei mir auffällt das der Virenscanner (Antivir) nach dem Neustart ein Update gemacht hat. Allerdings hat mein Notebook das gleiche Update gemacht. Und da komme ich noch auf die DB drauf.

    Also bleibt eigentlich noch der Neustart. Oder aber ein misslungenes Update ohne Fehlermeldung bei der Installation.

    Hmm. Mist.

  5. Hallo,

    folgendes Problem.

    Seid heute Morgen komme ich nicht mehr auf unsere DB-Anwendungen drauf. Verschiedene Applikationen können sich scheinbar nicht mehr auf die Datenbanken anmelden.

    Starte ich die Programme kommt ne Messagebox mit der folgenden Meldung.

    "Prozedureinsprungpunkt "CreateActCtxW" wurde in DLL "Kernel32.dll" nicht gefunden."

    Ne Suche bei Google & Microsoft war enttäuschend.

    Hat jemand ne Lösung?

    Systembeschreibung:

    Win2000 SP4

    Pentium 4 3.0 GHz

    512 MB RAM

  6. Hallo Jungs und Mädels,

    ich habe folgendes Problem.

    Zwei Rechner unterschiedlicher Bauart, besitzen eine ON-Board-NIC sowie eine nachgerüstete NIC (ebenfalls unterschiedlicher Modelle).

    Vorab beide Rechner sind nicht miteinander vernetzt.

    Also, über die ON-Board-Verbindung werden TCP\IP- & TFTP-Pakete versendet und empfangen (statische IPs, Class-B-Netz, Peer-to-Peer)

    Mit den zugebauten PCI-NIC werden die Rechner in ein DHCP-Netz innerhalb einer Domaine mit jeweils unterschiedlichen Richtlinien eingebunden.

    Nach dem Neustart des OS (egal ob Kalt- oder Warmstart) und Ausführen aller Anwendungen aus dem Autostart, benötigt das OS x Sekunden (ca 5) bis die Peer-to-Peer-Verbindung aktiv ist.

    Was unschön ist, weil meine Anwendung nach dem starten schon kommunizieren möchte.

    Hat da jemand nen Rat?

    Welche nicht auf einem zeitverzögerten starten\kommunizieren der Anwendung hinausläuft? Solch ein Work-Around ist nicht wirklich empfehlenwert.

    Und warum passiert das Problem?

    gruß und danke für die antwort.

  7. Siehe hier für ein ähnliches Beispiel in C\C++. Musst nur noch ein wenig den Kopf anstrengen und schon haste das Ding Ruckzuck umgeschrieben.

    Was musste tun?

    Eigentlich recht simpel. Suchst nach dem auftreten der beiden Klammern. Den Text innerhalb der Klammern nimmst du zum Identifizieren des Blockes.

    Da du nun weißt in welchem Block du bist. Kannst du innerhalb des Blockes bis zum "=" suchen. Damit hast du deinen Parameterbezeichner. Ab '=' bis 'CR' ist dann dein Parameter.

    Das wiederholste bis Dateiende.

    MVG

    need-some-blood

  8. Morgen Jungs und Mädels,

    folgendes Problem:

    Habe ein kleines Delphi-Programm welches eine DOS-Applikation startet. Der Rückgabewert des Dos-Fensters soll in eine Pipe (alternativ auch in eine Text-Datei) umgeleitet werden und anschliessen in einem Memo angezeigt werden.

    Natürlich funzt das net.

    
    Procedure CaptureDosCmd(sCommand : string; sparameter : string; sRerouting :string; OutputMemo : Tmemo);
    
    const CaptureBuffersize =2500;
    
    var Secattrib     : TSecurityAttributes;
    
        ReadPipe      : THandle;
    
        WritePipe     : THandle;
    
        Startup       : TStartupinfo;
    
        Processinfo   : TProcessinformation;
    
        CaptureBuffer : PChar;
    
        BytesRead     : DWord;
    
        WaitHandle    : DWord;
    
        cmdLine       : string;
    
    begin
    
      captureBuffer:='!';
    
    
      CmdLine := '"' + sCommand + '" ' + sParameter;
    
      if CreatePipe(ReadPipe,writepipe, @SecAttrib,0) then
    
          begin
    
            FillChar(Startup, SizeOf(Startup), #0);
    
            with Startup do
    
                  begin
    
                    cb          := SizeOf(Startup);
    
                    dwFlags     := STARTF_USESHOWWINDOW;
    
                    wShowWindow := SW_SHOWNORMAL;
    
                    hStdOutput  := WritePipe;
    
                    hStdInput   := ReadPipe;
    
                  end;
    
             if CreateProcess(NIL, PChar(cmdline), @Secattrib, NIL,
    
                             FALSE,CREATE_NEW_CONSOLE or NORMAL_PRIORITY_CLASS,
    
                             NIL,PChar(ExtractFilePath(sCommand)),
    
                             Startup, Processinfo) then
    
                begin
    
                if not Application.Terminated then
    
                    begin
    
                      repeat
    
                        BytesRead :=0;
    
                        ReadFile(ReadPipe,CaptureBuffer[0],CaptureBufferSize,BytesRead,nil);
    
                        OutputMemo.Text:=OutputMemo.Text + String(CaptureBuffer);
    
                      until (BytesRead < CaptureBufferSize);
    
                    end;
    
                  repeat
    
                    WaitHandle := WaitForSingleObject(ProcessInfo.hProcess,100);
    
                    Application.ProcessMessages;
    
                  until (WaitHandle>WAIT_TIMEOUT) or Application.Terminated;
    
                end;
    
            CloseHandle(ReadPipe);
    
            CloseHandle(WritePipe);
    
          end
    
    end;
    
    
    procedure TForm1.Button1Click(Sender: TObject);
    
    var cmd : array[0..255] of char;
    
        par : array[0..255] of char;
    
    begin
    
      GetEnvironmentVariable('COMSPEC',cmd,255);
    
      par:='';
    
      CaptureDosCMD('C:\DeVEject\DevEject.exe','-EjectDrive:F:','>C:\test.txt',memo1);
    
    end;
    
    
    

    Problem:

    - Die Applikation wird zwar ausgeführt, aber der Rückgabewert nicht umgeleitet.

    Hat jemand ne Lösung?

  9. Mahlzeit Jungs und Mädels.

    Ich hab da folgendes Problem.

    Hab ein Programm welches ganz simpel Daten über einen TCP\IP-Stream in & aus einer Datenbank sendet.

    Allerdings kann es passieren dass sich die Datensätze ohne Mitwirken des Tools ändern. z.B: weil ein User die Datenbank direkt geöffnet hat, oder dieses Tool auf einem anderen Rechner auch läuft.

    Diese geänderten Datensätze möchte ich nun direkt ausgelesen haben. Also Quasi ein OnChange-Event aus der Datenbank heraus. Geht das mit den ADO-Komponenten? Habe dafür die DB-Anbindung die ADOConnection und das ADODataset genutzt. Standartmässg TDatasource für die Gridanzeige.

    Hat da jemand nen schnellen Lösungsansatz parat?

    MVG

    need-some-blood

  10. In Delphi würde ich es so machen.

    Endweder mit zur Entwurfszeit implementierten Objekten. Dann musst du aber sechs mal den gleichen Code schreiben

     
    
    // Für das erste Label
    
      randomize;
    
      if checkbox1.Checked then begin  
    
        j:=random(6);
    
        if J=0 then J:=1;
    
        case J of
    
          1: label1.Color:= clblack;
    
          2: label1.Color:= clwhite;
    
          3: label1.Color:= clred;
    
          4: label1.Color:= clgreen;
    
          5: label1.Color:= clyellow;
    
          6: label1.Color:= clskyblue;
    
        end;
    
        label1.caption:= inttostr(j);
    
      end;

    Oder mit zur Laufzeit erstellten Objekten. Dann gilt der gleiche Code für alle Objekte


    randomize;
    For i:=0 to 5 do begin
    if checkboxes[i].checked then begin //dynamische checkboxen
    j:=random(6);
    if J=0 then J:=1;
    case J of
    1: labels[i].Color:= clblack; //dynamsiche Labels
    2: labels[i].Color:= clwhite;
    3: labels[i].Color:= clred;
    4: labels[i].Color:= clgreen;
    5: labels[i].Color:= clyellow;
    6: labels[i].Color:= clskyblue;
    end;
    labels[i].caption:= inttostr(j);
    end;
    end;
    [/PHP]

    Der Code ist nicht getestet.

    MVG

    need-some-blood

  11. Ok, das mit den 256 Werten verstehe ich. Werde dies auch nicht so lösen. Wäre natürlich ne schön elegante option gewesen

    Mal ne weiterführende Frage dazu.

    Müsste die Fehlermeldung nicht heißen, dass ich den Wertebereich unter-bzw. überschritten habe?

    Diese Fehlermeldung zeigt mir dies nicht an, zeigt aber auf die Codezeile.

    Also müssten mir hier noch Parameter fehlen.

    MVg

    need-some-blood

  12. auf die Idee bin ich auch schon gekommen. Aber so einfach macht es mir das Universum nicht.

    Routen sind auch nicht installiert. keine Arps. :rolleyes:

    Wo liegt der Fehler.

    Kann dóch nur an der Hardware (Kabel oder\und netzwerkanschluss) oder an falschen Einstellungen die ich die letzten dreimal übersehen habe liegen

    need-some-blood

  13. Hey.

    folgendes Problem.

    Habe auf meinem Notebook ein Win2KSP3-System.

    Möchte nun von diesem System auf ein Embedded-system zugreifen. Eigentlich ganz einfach über TCP\IP.Geht nur leider nicht über 100'er Hub mit Patchkabel, oder über Crossover. Bekomme schon beim pingen Timeouts. Bekomme aber das Verbindungszeichen im Tray richtig und mit der richtigen Geschwindigkeit angezeigt

    Nur über das Firmennetzwerk mit Switch und Router. Das ist aber nicht geplant.

    Von meinem Arbeitsplatzrechner (auch Win2KSp3) geht dieses aber problemlos. Also sollte es an den Einstellungen des Notebooks liegen.

    Finde nur den Fehler nicht.

    Notebook:

    NIC=Ist eine SiS900 Fast Ethernet NIC

    IP= 192.168.0.54

    Subnet= 255.255.255.0

    kein Gateway, kein DNS

    Embedded System

    10 Mbits Half Duplex

    NIC =unbekannt

    IP 192.168.0.1

    Subnet=255.255.255.0

    Port=2111

    kein Gateway, kein DNS

    Keine Einstellungsmöglichkeiten, ohne Netzwerkzugriff

    Ansonsten funzt die Nic des Notebooks einwandfrei. Genauso wie das embeddedsystem mit meinem Arbeitsplatzrechner

    vielen dank für die schnelle Hilfe

    [edit] keine Firewall am laufen [\edit]

    need-some-blood

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...