Author Topic: АСУТП. Фееричекие перспективы и текущие проблемы.  (Read 3197 times)

0 Members and 1 Guest are viewing this topic.

Мыха

  • Освоившийся
  • **
  • Posts: 43
    • View Profile
Приветствую уважаемую публику.

Безусловно, помощь в играх, накручивание счётчиков сайтов и разные другие великие дела "джентельменов в поисках десятки (ц)" - замечательное применение для Кликерманна.

Хотелось бы поговорить о гораздо  более серьёзных вопросах, в частности про автоматизированные системы управления технологическими процессами. Видели бы Вы, дорогие читатели, какие астрономические суммы в это дело вкладывают крупные корпорации и какие скромные результаты они взамен получают!!!

Вообще, системы АСУТП - вещи сложные, было бы наивно полагать, что Кликерманн сам по себе запросто с такими задачами справится в одиночку. Но вот замечательными "глазами" и "руками", так недостающими этим системам, Кликерман, ИМХО, может стать замечательным подспорьем.

Типичная схема бюджетного АСУТП сводится к компьютеру, к которому подключаются самые разные приборы и механизмы по самым разным интерфейсам, с самым разным собственным ПО, рассчитанным на человека - оператора. И вот как раз собрать все данные воедино, переслать их куда следует, и обратно получить команды воздействия на подключенные приборы - как раз замечательная для Кликерманна задача.

Но тут же и начинаются проблемы. Вот с чем я столкнулся для начала.

1. вот прибор. https://eni-bbmv.ru/index.php/ru/catalog/item/11-metrologicheskoe-oborudovanie/25-istochnik-kalibrovannykh-signalov-kalibrator-eni-201i Вот его программное обеспечение. https://eni-bbmv.ru/images/katalog/product/25/EnI-201I_PO_02_01_0000.rar
 Весит мало, вирусов нет, поэкспериментировать недолго.  Интерфейс программного обеспечения по сути повторяет лицевую панель прибора, отображая на неё информацию и позволяя виртуально нажимать на кнопки управления. Чем, по мнению разработчиков, такой подход лучше, чем просто просмотр и нажатие кнопок непосредственно на приборе - остаётся загадкой.

Проблема в следующем. Вот код, чесно спёртый на сайте Кликерманна.
Code: (clickermann) [Select]
GETSCREEN // получаем скриншот экрана
COLORMODE(3) // применяем к нему COLORMODE
IF_PICTURE_IN(0,0, $_xmax,$_ymax, "file.bmp", -1, 100) // поиск изображения
  // здесь прописываем команды на случай, если картинка найдена
ELSE // условия для "иначе"
  // Тут прописываем действия, если картинка не найдена
END_IF // конец условия
Для начала записываю картинку без привязки к окну. Вместо 0,0, $_xmax,$_ymax вбиваю в код реальные координаты. Вот как видит Кликерманн окно программы без привязки к окну.


Теперь делаю привязку к окну, код получения картинки - как в исходнике. вот результат.


Кликерманн использовался на Windows XP (машина производственная), но уверен, что от версии Виндовс ничего не зависит.

Не стану загружать примерами работы других аналогичных программ. На некоторых - при привязке к окну всё работает абсолютно нормально, но чаще выявляются проблемы, аналогичные этой. При желании - могу догрузить еще примеров.

Может  что то простого и банального не знаю?

UPD

с картинками не совладал. вот первая: https://ibb.co/yF3ymHL
вот вторая https://ibb.co/5rr4CH6
« Last Edit: January 18, 2021, 10:58:29 AM by Мыха »

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Всё нормально видит в привязке если привязывать к основному окну см. скрин. Правда меняется оформление окна.

Не стану загружать примерами работы других аналогичных программ. На некоторых - при привязке к окну всё работает абсолютно нормально, но чаще выявляются проблемы, аналогичные этой. При желании - могу догрузить еще примеров.

Может  что то простого и банального не знаю?
Про привязку читал в справке Особенности -- Привязка к окну? Так вот Здесь каждый элемент (даже символы на виртуальном экране) это отдельное окно со своим hwnd, смотри прикреплённый скрин с деревом. Именно эта программа устроена очень просто, ветвистости почти нет. Почти все элементы являются дочерними к главному окну. При привязке к главному окну должен видеть все дочерние (у меня видит скрин выше) и управление тоже должно работать. Попробуй. Обычно, если видит всё, то и работать должно.

Если управление не будет работать, нужно слать сообщения нужным окнам. К сожалению имена у них не заданы. Кликер не умеет читать всё дерево или определять hwnd по классу окна. К счастью, здесь это и не нужно да и не получилось бы. Зато умеет определять по координатам. Окно фиксированного размера. После запуска по координатам считать все hwnd не составит труда.

Повторюсь, скорее всего это и не нужно  делать, достаточно привязаться к главному окну.
« Last Edit: January 18, 2021, 02:42:21 PM by Vint »


Мыха

  • Освоившийся
  • **
  • Posts: 43
    • View Profile
про привязку к окну в справке не читал. буду читать и осмыслять. надеюсь, что когда прибор подцепится, тогда его индикаторы будут нормально видны.  Ибо ради их считывания всё и затевается. Спасибо.

Cleoss

  • Активный участник
  • ***
  • Posts: 260
  • Автоматизируй это!
    • View Profile
Опять пресловутая привязка) Юзерам как мёдо намазано, летят и липнут на привязку. А чуть спросишь, знаком ли с ней, читал ли справку, читал ли форум — прячутся. Не понятно только, откуда они примеры берут такие, с привязкой, и кто им постоянно прививает эту привычку ей пользоваться. Видимо, все хотят, чтоб в фоне работало и без фокуса.

shot00000000.png

Это MS Spy такое дерево показывает? Никогда не юзал его, использую обычный встроенный au3info или как там его.

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Это MS Spy такое дерево показывает? Никогда не юзал его, использую обычный встроенный au3info или как там его.
Это InqSoft Window Scanner. Но пользуюсь разными: AutoIt Window Info, Control Viewer, Inspect_W10, wInformer  в том числе.