1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. elehchr

Beiträge von elehchr

  • Wie kommuniziert AutoIt mit dem COM-Port?

    • elehchr
    • 26. Mai 2016 um 12:45
    Zitat von Bitnugger

    Schau mal hier, ob dir das hilft...

    https://www.autoitscript.com/forum/topic/12…t-com-port-udf/

    RS232 / serielle Schnittstelle unter WIN7 (64bit)

    Danke. Die werde ich mir später nochmal genauer ansehen.


    Zitat von GtaSpider

    Willst du die Zeitanzeige denn immer auf ein PC anzeigen lassen? Alternativ kannst du dir auch mal überlegen mit einem Arduino und einer 7-segment-Anzeige zu basteln, sieht vielleicht auch ein wenig cooler aus^^ Dann bräuchtest du auch kein PC.

    Ja, ich brauche die Ergebnisse für eine spätere Auswertung digital auf einem PC.
    Was vielleicht vorstellbar wäre, wäre eine zusätzliche Segmentanzeige für den Fahrer. Das könnte man aber wahrscheinlich mit einem externen Bildschirm recht komfortabel lösen. Diese zweite Anzeige ist aber derzeit nicht geplant.

  • Wie kommuniziert AutoIt mit dem COM-Port?

    • elehchr
    • 26. Mai 2016 um 09:42

    Moin zusammen,
    ich habe eine Frage zum COM-Port und leider keinen blassen Schimmer, wie ich das umsezten soll. Ich hoffe es kann mir jemand auf die Sprünge helfen...

    Damit ihr mein Problem versteht, hole ich mal etwas aus.
    Ich möchte für unseren Kart-Verein eine kleine Zeitnahme bauen. Es gibt zwar schon Software (http://stopwatch.de/software/kartslalom/index.php) die sowas kann, allerdings sind mir 250€ zu viel und ich wollte selber was basteln. Also habe ich mit AutoIt mal angefangen und bisher funktioniert das auch schon sehr gut. Hier ist mein bisheriger Stand: 2016_05_26_Zeitnahme_V103.au3


    Jetzt habe ich aber folgendes Problem.
    Es soll eine Lichtschranke eingesetzt werden, die dementsprechend die Zeitmessung startet bzw. stoppt. Auch hierfür habe ich schon einen "Bauplan" gefunden (http://stopwatch.de/support/lichtschranken-anschluss.htm). Ich würde fürs Erste auch diese IR-Lichtschranke von Conrad verwenden, da sie vermutlich für meine Zwecke ausreichen würde.


    Wie bekomme ich das jetzt hin, dass meine Zeitnahme auf das Signal dieser Lichtschranke hört und dementsprechend die Stoppuhr startet/stoppt? Ich habe diesbezüglich keine Vorkenntnisse und hoffe auf eine verständliche Erklärung / Lösung meines Problems.


    P.S. Ich würde, wie auch in der Bauanleitung beschrieben, den COM-Port nutzen.


    Viele Grüße!
    Christian

  • GPU-Auslastung anzeigen?

    • elehchr
    • 28. April 2016 um 12:10

    Das sieht interessant aus. :thumbup:
    Danke!

  • GPU-Auslastung anzeigen?

    • elehchr
    • 28. April 2016 um 10:28

    Hallo zusammen,
    eins möchte ich direkt vorweg sagen. Ich probiere zwar immer wieder mit AutoIt ein bisschen zu basteln, aber grundsätzlich zähle ich wohl eher als "Anfänger", was mein Wissen angeht.

    Nun zu meinem Projekt und Problem:
    Ich bin gerade dabei einen kleinen übersichtlichen "Monitor" für mein Notebook zu erstellen. In diesem Monitor sollen vorerst die Auslastung von CPU, RAM, GPU und Akku-Status angezeigt werden. Bis auf die GPU-Auslastung funktioniert der Monitor auch schon recht gut.
    Leider komme ich bei der GPU-Anzeige an meine Grenzen und hoffe hier in dem Forum auf Hilfe und konstruktive Kritik.

    Kann mir jemand einen Tip geben, wie ich die GPU-Auslastung für Nvidia-Grafikkarten auslesen kann?

    Hier ist mein derzeitiger "Bastelstand":

    Code
    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <ProgressConstants.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    
    
    Opt("GUIOnEventMode",1)
    
    
    #Region ### START Koda GUI section ### Form=C:\Users\elehchr\Desktop\Test\Notebook-Status.kxf
    $Form1 = GUICreate("Notebook-Status", 241, 346, 837, 405)
    GUISetIcon("D:\USERS\elehchr\AutoIt\Notebook-Status\Task-Manager.ico", -1)
    DllCall('uxtheme.dll', 'none', 'SetThemeAppProperties', 'int', 0)
    $lbl_host = GUICtrlCreateLabel(@UserName & " @ " & @ComputerName, 8, 8, 222, 17, $SS_CENTER)
    $grp_batterie = GUICtrlCreateGroup("Batterie ", 8, 264, 225, 73)
    $progress_batterie = GUICtrlCreateProgress(16, 280, 206, 25)
    $lbl_batterie = GUICtrlCreateLabel("%", 16, 312, 206, 17, $SS_CENTER)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $grp_ram = GUICtrlCreateGroup("RAM ", 8, 104, 225, 73)
    $lbl_ram = GUICtrlCreateLabel("%", 16, 152, 206, 17, $SS_CENTER)
    $progress_ram = GUICtrlCreateProgress(16, 120, 206, 25)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $grp_gpu = GUICtrlCreateGroup("GPU ", 8, 184, 225, 73)
    $lbl_gpu = GUICtrlCreateLabel("%", 16, 232, 206, 17, $SS_CENTER)
    $progress_gpu = GUICtrlCreateProgress(16, 200, 206, 25)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $grp_cpu = GUICtrlCreateGroup("CPU ", 8, 24, 225, 73)
    $lbl_cpu = GUICtrlCreateLabel("%", 16, 72, 206, 17, $SS_CENTER)
    $progress_cpu = GUICtrlCreateProgress(16, 40, 206, 25)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###
    
    
    GUISetOnEvent($GUI_EVENT_CLOSE, "_ende")
    WinSetOnTop ( "Notebook-Status", "", 1 )
    
    
    While 1
       _batterie()
       _ram()
       _gpu()
       _cpu()
       Sleep (500)
    	$nMsg = GUIGetMsg()
    	Switch $nMsg
    		Case $GUI_EVENT_CLOSE
    			Exit
    
    
    	EndSwitch
    WEnd
    
    
    #Region Batterie ################################################################################
    Func _batterie()
       ; Batterieanzeige in Prozent
       $SYSTEM_POWER_STATUS = DllStructCreate("byte;byte;byte;byte;int;int")
       DllCall("kernel32.dll", "int", "GetSystemPowerStatus", _
    		"ptr", DllStructGetPtr($SYSTEM_POWER_STATUS))
       $Batterie = DllStructGetData($SYSTEM_POWER_STATUS, 3)
       GUICtrlSetData ($lbl_batterie, "")
       GUICtrlSetData ($lbl_batterie, $Batterie & " % ")
       ; Batterie-Progressbar
       GUICtrlSetData($progress_batterie, $Batterie)
       ; Ladezustand der Batterie auslesen
       $sWMIService = "winmgmts:\\.\root\WMI"   
       $objWMIService = ObjGet($sWMIService) 
    	  If IsObj($objWMIService) Then
    		 $colItems = $objWMIService.ExecQuery("SELECT * FROM BatteryStatus")
    			If IsObj($colItems) Then 
    			   For $oItem In $colItems
    				  $ladezustand = $oItem.Charging
    					 if $ladezustand = True Then ; Wenn die Batterie geladen wird...
    						GUICtrlSetData ($grp_batterie, "Batterie - Netzbetrieb ")
    						GUICtrlSetColor($progress_batterie, 0x0033FF) ;blau
    						   For $i = 0 To $Batterie Step 1
    						   GUICtrlSetData($progress_batterie, $i)
    						   Sleep(1)
    						   Next
    						ExitLoop
    					 Else
    						GUICtrlSetData ($grp_batterie, "Batterie - Akkubetrieb ")
    						   If $Batterie > 25 Then
    							  GUICtrlSetColor($progress_batterie, 0x00FF00) ;grün
    						   Else
    							  GUICtrlSetColor($progress_batterie, 0xFF0000) ;rot
    						   EndIf
    						ExitLoop
    					 EndIf
    			   Next
    			Else
    			   MsgBox(16, "Error", "Failed to get collection.")
    			EndIf
    	  Else	
    		 MsgBox(4096, "ERROR", "Failed to connect to WMI at: " & $sWMIService)
    	  EndIf
    
    
    EndFunc
    #EndRegion Batterie #############################################################################
    
    
    #Region RAM #####################################################################################
    Func _ram()
       $RAM = MemGetStats()
       $RAMauslastung = $RAM[0]
       ; RAM-Auslastung in Prozent
       GUICtrlSetData ($lbl_ram, "")
       GUICtrlSetData ($lbl_ram, $RAMauslastung & " % ")
       ; RAM-Progressbar
       GUICtrlSetData($progress_ram, $RAMauslastung)
       ; Farbe der RAM-Progressbar bestimmen
       If $RAMauslastung < 70 Then
    	  GUICtrlSetColor($progress_ram, 0x00FF00) ;grün
       Else
    	  GUICtrlSetColor($progress_ram, 0xFF0000) ;rot
       EndIf	  
    EndFunc
    #EndRegion RAM ###################################################################################
    
    
    #Region GPU #####################################################################################
    Func _gpu()
       $gpu = 0
       ; GPU Auslastung in Prozent
       GUICtrlSetData ($lbl_gpu, "")
       GUICtrlSetData ($lbl_gpu, $gpu & " % ")
        ; Progressbar
       GUICtrlSetData($progress_gpu, $gpu)
       ; Farbe der GPU-Progressbar bestimmen
       If $gpu < 70 Then
    	  GUICtrlSetColor($progress_gpu, 0x00FF00) ;grün
       Else
    	  GUICtrlSetColor($progress_gpu, 0xFF0000) ;rot
       EndIf	
    EndFunc
    #EndRegion RAM ###################################################################################
    
    
    #Region CPU #####################################################################################
    Func _cpu()
       ; Abfrage der CPU Auslastung
       $sWMIService = "winmgmts:\\.\root\CIMV2"   
       $objWMIService = ObjGet($sWMIService) 
    	  If IsObj($objWMIService) Then
    		 $colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_Processor")
    			If IsObj($colItems) Then 
    			   For $oItem In $colItems
    				  $cpu = $oItem.LoadPercentage
    			   Next
    			Else
    			   MsgBox(16, "Error", "Failed to get collection.")
    			EndIf
    	  Else	
    		 MsgBox(4096, "ERROR", "Failed to connect to WMI at: " & $sWMIService)
    	  EndIf
       ; CPU Auslastung in Prozent
       GUICtrlSetData ($lbl_cpu, "")
       GUICtrlSetData ($lbl_cpu, $cpu & " % ")
       ; Progressbar
       GUICtrlSetData($progress_cpu, $cpu)
    
    
       ; Farbe der CPU-Progressbar bestimmen
       If $cpu < 70 Then
    	  GUICtrlSetColor($progress_cpu, 0x00FF00) ;grün
       Else
    	  GUICtrlSetColor($progress_cpu, 0xFF0000) ;rot
       EndIf	
    
    
    EndFunc
    #EndRegion RAM ###################################################################################
    
    
    #Region ENDE ####################################################################################
    Func _ende()
       Exit
    EndFunc
    #EndRegion ENDE #################################################################################
    Alles anzeigen


    Danke schon mal im Voraus für eure Hilfe. :thumbup:

    P.S. Ja, ich weiß, dass es schon ein paar Beiträge zu diesen Thema gibt und ja, ich habe google benutzt. Doch wie schon beschrieben bin ich kein Profi und eine Lösung zu meinem Problem habe ich bisher nicht finden können.

    Gruß,
    Christian

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™