![]()  | 
	
 
  | 
| 
		 
			 
			#1  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Здравствуйте, как в Delphi 7 можно получит от UPS (ИБП) подключенного через COM-порт вот такую строку с данными: (224.0 224.0 224.0 002 50.0 13.5 34.0 00001000# 
		
	
		
		
		
		
		
	
		
		
	
	
	 | 
| 
		 
			 
			#2  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Надо смотреть протокол общения с ИБП. Т.е. тебе, видимо, надо послать какую-то команду в порт и считать ответ. По поводу работы с COM-потром, вроде, есть библиотеки работы с ним, еще есть вариант маппинга COM-портов на USB. Короче, надо гуглить и пробовать. 
		
	
		
		
		
		
		
	
		
		
	
	
	ЗЫ. Кстати, а посмотреть на тему общения с ИБП через WMI? Может и не надо работать с портом напрямую, а попробовать получить нужные данные через WMI (Windows Management Interface).  | 
| 
		 
			 
			#3  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Эту строку я взял из программы UPS Assistant, при её настройке выбирается порт через который происходит общение с ИБП, так что думаю всё же надо работать с портом, только вот где найти эти наборы команд... 
		
	
		
		
		
		
		
	
		
		
	
	
	 | 
| 
		 
			 
			#4  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Удалось перехватить данные при общении программы UPS Assistant с ИБП: 
		
	
		
		
		
		
		
	
		
		
	
	
	... Q1 [len=2] <20190709213344.302 RX> (218.0 218.0 218.0 002 50.0 13.3 34.0 00001000 [len=46] <20190709213345.504 TX> Q1 [len=2] <20190709213346.504 RX> (218.0 218.0 218.0 002 50.0 13.3 34.0 00001000 [len=46] <20190709213347.705 TX> Q1 [len=2] <20190709213348.705 RX> (220.0 220.0 220.0 002 50.0 13.3 34.0 00001000 [len=46] <20190709213349.906 TX> Q1 [len=2] <20190709213350.906 RX> (220.0 220.0 220.0 002 50.0 13.3 34.0 00001000 [len=46] <20190709213352.106 TX> Q1 [len=2] <20190709213353.106 RX> (220.0 220.0 220.0 002 50.0 13.3 34.0 00001000 [len=46] <20190709213354.324 TX> Q1 [len=2] ... Но где здесь команда отсылаемая ИБП?  | 
| 
		 
			 
			#5  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 А не факт, что ты можешь перехватить то, что отправляется в порт. А может то, что отсылается и есть те строки с RX и TX в логе. Я бы для начала почитал доку разработчика на этот ИБП. Какая модель ИБП? Надо поискать в инете... 
		
	
		
		
		
		
		
	
		
		
	
	
	 | 
| 
		 
			 
			#6  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Вот тут, вроде, что то есть: https://networkupstools.org/ups-protocols.html 
		
	
		
		
		
		
		
	
		
		
	
	
	 | 
| 
		 
			 
			#7  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Разобрался, по команде Q1 возвращается строка с данными (224.0 224.0 224.0 002 50.0 13.5 34.0 00001000 [len=46] 
		
	
		
		
		
		
		
	
		
		
	
	
	Только как реализовать отправку команды и получение ответа в Delphi7?  | 
| 
		 
			 
			#8  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Ну, например, есть вот такая библиотека: https://sourceforge.net/projects/comport/ 
		
	
		
		
		
		
		
	
		
		
	
	
	 | 
| Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
 
Alex7 (10.07.2019)
  | ||
| 
		 
			 
			#9  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Скачал, буду разбираться. Спасибо. 
		
	
		
		
		
		
		
	
		
		
	
	
	 |