Автор Тема: Протокол работы с хроматографом  (Прочитано 2548 раз)

Оффлайн nick2

  • Старенький
  • **
  • Сообщений: 31
  • Карма: +1/-0
    Добрый день! Суть проблемы такова: имеются хроматографы СНГС  и Геопласт 04М и стоит задача написать программу для работы с ними. PortMon'ом сниферил com порт, нашёл пару команд, но как правильно ими оперировать не пойму. Нет ли не у кого протокола для работы с ними?
    Где-то вычитывал что эти хроматографы активные, т.е. сами постоянно шлют значения, но как я понял для работы модулей как раз и нужны команды.

    Оффлайн 127486

    • Старожил
    • ****
    • Сообщений: 567
    • Карма: +37/-9
      Re: Протокол работы с хроматографом
      « Ответ #1 : 31 Март 2015, 14:38:22 »
      Так выглядит протокол?
      AA AA 38 00 15 33 0C 23                                 
      AA AA 39 00 15 39 0C 28                                 
      AA AA 3A 00 15 3D 0C 24                                 
      AA AA 3B 00 15 3F 0C 25                                 
      AA AA 3C 00 16 01 0C 23                                 
      AA AA 3D 00 15 3C 0C 1F                                 
      AA AA 3E 00 15 3B 0C 1A                                 
      AA AA 3F 00 15 37 0C 17                                 
      AA AA 40 00 15 2F 0C 15                                 
      AA AA 41 00 15 30 0C 0D                                 
      AA AA 42 00 15 26 0C 09                                 
      AA AA 43 00 15 24 0C 02                                 
      AA AA 44 00 15 22 0C 01                                 
      AA AA 45 00 15 1C 0B 3E                                 
      AA AA 46 00 15 1E 0B 3B                                 
      AA AA 47 00 15 1C 0B 35                                 
      AA AA 48 00 15 18 0B 35                                 
      AA AA 49 00 15 18 0B 33                                 
      AA AA 4A 00 15 19 0B 31                                 
      AA AA 4B 00 15 18 0B 32                                 
      AA AA 4C 00 15 13 0B 36                                 
      AA AA 4D 00 15 18 0B 3E                                 
      AA AA 4E 00 15 16 0B 38                                 
      AA AA 4F 00 15 15 0B 34                                 
      AA AA 50 00 15 13 0B 32                                 
      AA AA 51 00 15 13 0B 32                                 
      AA AA 52 00 15 11 0B 27                                 
      AA AA 53 00 15 10 0B 1D                                 
      AA AA 54 00 15 10 0B 18                                 
      AA AA 55 00 15 10 0B 11                                 
      AA AA 56 00 15 11 0B 15                                 
      AA AA 57 00 15 0F 0B 17                                 
      AA AA 58 00 15 0C 0B 1C                                 
      AA AA 59 00 15 0E 0B 24                                 
      AA AA 5A 00 15 0F 0B 28                                 
      AA AA 5B 00 15 0E 0B 2C                                 
      AA AA 5C 00 15 0B 0B 2D                                 
      AA AA 5D 00 15 0E 0B 2E                                 
      AA AA 5E 00 15 10 0B 2B                                 
      AA AA 5F 00 15 11 0B 2C                                 
      AA AA 60 00 15 0D 0B 30                                 
      AA AA 61 00 15 0C 0B 33                                 
      AA AA 62 00 15 11 0B 36                                 
      AA AA 63 00 15 0F 0B 37                                 
      AA AA 64 00 15 13 0B 3D                                 
      AA AA 65 00 15 11 0B 3F                                 
      AA AA 66 00 15 13 0C 04                                 
      AA AA 67 00 15 11 0C 04                                 
      AA AA 68 00 15 11 0C 01                                 
      AA AA 69 00 15 12 0B 3D                                 
      AA AA 6A 00 15 10 0B 38                                 
      AA AA 6B 00 15 12 0B 32                                 
      AA AA 6C 00 15 10 0B 2B                                 
      AA AA 6D 00 15 0E 0B 24                                 
      AA AA 6E 00 15 0E 0B 23                                 
      AA AA 6F 00 15 0F 0B 1B                                 
      AA AA 70 00 15 11 0B 16                                 
      AA AA 71 00 15 0F 0B 19                                 
      AA AA 72 00 15 0F 0B 10                                 
      AA AA 73 00 15 0E 0B 0C                                 
      AA AA 74 00 15 0D 0B 0A                                 
      AA AA 75 00 15 09 0B 07                                 
      AA AA 76 00 15 0E 0B 05                                 
      AA AA 77 00 15 09 0B 09                                 
      AA AA 78 00 15 0B 0B 0D                                 
      AA AA 79 00 15 0A 0B 13                                 
      AA AA 7A 00 15 0C 0B 15                                 
      AA AA 7B 00 15 0C 0B 16                                 
      AA AA 7C 00 15 0A 0B 11                                 
      AA AA 7D 00 15 08 0B 12                                 
      AA AA 7E 00 15 0B 0B 17                                 
      AA AA 7F 00 15 0C 0B 20                                 
      AA AA 80 00 15 0D 0B 1F                                 
      AA AA 81 00 15 0B 0B 20                                 
      AA AA 82 00 15 0B 0B 1D                                 
      AA AA 83 00 15 0B 0B 20                                 
      AA AA 84 00 15 09 0B 16                                 
      AA AA 85 00 15 0B 0B 14                                 
      AA AA 86 00 15 0E 0B 14                                 
      AA AA 87 00 15 0D 0B 0F                                 
      AA AA 88 00 15 0B 0B 10                                 
      AA AA 89 00 15 0B 0B 0D                                 
      AA AA 8A 00 15 11 0B 0F                                 
      AA AA 8B 00 15 0F 0B 0E                                 
      AA AA 8C 00 15 0F 0B 0F                                 
      AA AA 8D 00 15 0F 0B 14                                 
      AA AA 8E 00 15 0D 0B 0E                                 
      AA AA 8F 00 15 0C 0B 10                                 
      AA AA 90 00 15 0E 0B 0C                                 
      AA AA 91 00 15 0F 0B 04                                 
      AA AA 92 00 15 12 0B 00                                 
      AA AA 93 00 15 0F 0A 38                                 
      AA AA 94 00 15 11 0A 35                                 
      AA AA 95 00 15 11 0A 32                                 
      AA AA 96 00 15 13 0A 30                                 
      AA AA 97 00 15 12 0A 2D                                 
      AA AA 98 00 15 11 0A 2B                                 
      AA AA 99 00 15 18 0A 2C                                 
      AA AA 9A 00 15 13 0A 2D                                 
      AA AA 9B 00 15 16 0A 2E                                 
      AA AA 9C 00 15 15 0A 33                                 
      AA AA 9D 00 15 11 0A 36                                 
      AA AA 9E 00 15 13 0A 3B                                 
      AA AA 9F 00 15 16 0A 3E                                 
      AA AA A0 00 15 15 0B 00                                 
      AA AA A1 00 15 15 0B 04                                 
      AA AA A2 00 15 1A 0B 0A                                 
      AA AA A3 00 15 1A 0B 02                                 
      AA AA A4 00 15 18 0B 03                                 
      AA AA A5 00 15 19 0A 3E                                 
      AA AA A6 00 15 1E 0A 3B                                 
      AA AA A7 00 15 1B 0A 39                                 
      AA AA A8 00 15 1C 0A 3E                                 
      AA AA A9 00 15 1E 0A 3D                                 
      AA AA AA 00 15 1F 0B 02                                 
      AA AA AB 00 15 1C 0B 07                                 
      AA AA AC 00 15 1D 0B 0A                                 
      AA AA AD 00 15 1F 0B 0A                                 
      AA AA AE 00 15 1C 0B 0B                                 
      AA AA AF 00 15 1E 0B 07                                 
      AA AA B0 00 15 1F 0B 07                                 
      AA AA B1 00 15 1F 0B 08                                 
      AA AA B2 00 15 23 0B 04                                 
      AA AA B3 00 15 21 0B 03                                 
      AA AA B4 00 15 23 0A 3F                                 
      FF FF FF 52 00 00 00 00 00 00 00 00 00 00 00 16 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 68

      Оффлайн nick2

      • Старенький
      • **
      • Сообщений: 31
      • Карма: +1/-0
        Re: Протокол работы с хроматографом
        « Ответ #2 : 31 Март 2015, 15:57:21 »
        127486,
        Не похожи. У меня  вот такие:
        HEX
        write 7E 30 32 31 OD
        read 21 30 32 OD
        write 23 30 32 30 30 30 30 OD
        read 3E OD
        write 23 30 32 31 34 30 31 OD
        read 3E 0D
        write 7E 30 32 33 31 46 46 0D
        read 21 30 32 0D
        write 24 30 31 35 30 39 0D
        read 21 30 31 OD
        ....
        Нулевую линию смогли получить, в dec запрос выглядит так: #01.
        В ответ приходит: "-00.970-15.000-15.000-03.192-15.000-15.000-15..00-15..00\r", из чего понятно что "-00.970" и "-03.192" это и есть значения нулевой линии.

        Это с хроматографа Геопласт 04М.




        Оффлайн 127486

        • Старожил
        • ****
        • Сообщений: 567
        • Карма: +37/-9
          Re: Протокол работы с хроматографом
          « Ответ #3 : 31 Март 2015, 16:02:28 »
          Ну у меня собственно тоже с геопласта.
          Может версии какието разные?

          посмотри вот это http://geosensor.ru/int/protocols/chro_IMS.zip

          Оффлайн nick2

          • Старенький
          • **
          • Сообщений: 31
          • Карма: +1/-0
            Re: Протокол работы с хроматографом
            « Ответ #4 : 31 Март 2015, 16:07:45 »
            Возможно и версии. Видел эту инструкцию, сейчас попробую другой ХГ подключить и на нём ещё потестировать.

            Оффлайн REA

            • Розов Евгений Анатольевич
            • Глобальный модератор
            • *****
            • Сообщений: 1378
            • Карма: +91/-64
              • GeoSensor
            Re: Протокол работы с хроматографом
            « Ответ #5 : 31 Март 2015, 18:51:50 »
            write 24 30 31 35 30 39 0D

            вот эта магия так расшифровывается - переводятся шестнадцатеричные коды в коды символов и на выходе имеем другое шестнадцатеричное число...
            соответственно - 24 = $, 30 = 0, 31 = 1... 39 = 9 ну и так далее
            хм... затейники
            « Последнее редактирование: 31 Март 2015, 18:54:17 от REA »

            Оффлайн Федя-Инженер

            • Да будет нефть
            • Глобальный модератор
            • *****
            • Сообщений: 734
            • Карма: +87/-31
            • Маленького обидеть всякий норовит
              Re: Протокол работы с хроматографом
              « Ответ #6 : 31 Март 2015, 22:05:18 »
              А с Андреем Заскалько связаться?
              Унижая... не возвысишься.
              И чего это боги горшки не обжигают?

              Оффлайн nick2

              • Старенький
              • **
              • Сообщений: 31
              • Карма: +1/-0
                Re: Протокол работы с хроматографом
                « Ответ #7 : 01 Апрель 2015, 16:31:52 »
                Разобрался я с запросами, скачал другой сниффер, в нём лучше в запросах/ответах разбираться. В Portmon'е всё в куче и легко потеряться.

                Сейчас буду пробовать уже собирать программку по тому что накопал  :)

                Ах да, ещё, в настройках супер пользователя, есть такая вкладка "Attenuator" в ней по каждому каналу отдельно вводятся по 3 коэффициента и к ним напряжения для модуля, вот как этими данными оперировать? Что это за атеньюатор и с чем его едят?  :-\
                write 24 30 31 35 30 39 0D

                вот эта магия так расшифровывается - переводятся шестнадцатеричные коды в коды символов и на выходе имеем другое шестнадцатеричное число...
                соответственно - 24 = $, 30 = 0, 31 = 1... 39 = 9 ну и так далее
                хм... затейники

                Да, так оно у меня и выходит, просто, как я выше написал, пару запросов постоянно я терял и из-за этого происходила путаница.  :)
                А с Андреем Заскалько связаться?
                Эммм, кто это?
                « Последнее редактирование: 01 Апрель 2015, 16:34:45 от nick2 »

                Оффлайн REA

                • Розов Евгений Анатольевич
                • Глобальный модератор
                • *****
                • Сообщений: 1378
                • Карма: +91/-64
                  • GeoSensor
                Re: Протокол работы с хроматографом
                « Ответ #8 : 01 Апрель 2015, 20:23:45 »
                А, понял - у вас сниффер просто не в ASCII, а в 16-ричном виде показывает и Read Write к нему относились, а не к протоколу.
                Хороший сниффер COM Port Toolkit
                http://www.compt.ru/ru/download.php

                Оффлайн 127486

                • Старожил
                • ****
                • Сообщений: 567
                • Карма: +37/-9
                  Re: Протокол работы с хроматографом
                  « Ответ #9 : 01 Апрель 2015, 20:37:00 »
                  Я так и не понял, у геопласт и геопласт 04м разные протоколы?
                  На память помню что CHROMAT.135 досовский, работал одинаково с обеими геопластами.

                  Оффлайн nick2

                  • Старенький
                  • **
                  • Сообщений: 31
                  • Карма: +1/-0
                    Re: Протокол работы с хроматографом
                    « Ответ #10 : 01 Апрель 2015, 21:25:11 »
                    А, понял - у вас сниффер просто не в ASCII, а в 16-ричном виде показывает и Read Write к нему относились, а не к протоколу.
                    Хороший сниффер COM Port Toolkit
                    http://www.compt.ru/ru/download.php
                    Сейчас я Free Serial Analyzer пользуюсь, мне он кажется очень удобным. Команды он показывает в виде "#003241", "$01514" и т.д. Да и легко анализировать полученную информацию.
                    « Последнее редактирование: 01 Апрель 2015, 21:27:21 от nick2 »

                    Оффлайн nick2

                    • Старенький
                    • **
                    • Сообщений: 31
                    • Карма: +1/-0
                      Re: Протокол работы с хроматографом
                      « Ответ #11 : 03 Апрель 2015, 14:12:42 »
                      Что такое Attenuator и для чего он используется?

                      Оффлайн REA

                      • Розов Евгений Анатольевич
                      • Глобальный модератор
                      • *****
                      • Сообщений: 1378
                      • Карма: +91/-64
                        • GeoSensor
                      Re: Протокол работы с хроматографом
                      « Ответ #12 : 03 Апрель 2015, 19:13:50 »
                      А в каком контексте слово? У него много значений по словарю (редуктор, глушитель, подавитель, ослабитель, делитель...)

                      Оффлайн nick2

                      • Старенький
                      • **
                      • Сообщений: 31
                      • Карма: +1/-0
                        Re: Протокол работы с хроматографом
                        « Ответ #13 : 03 Апрель 2015, 19:51:31 »
                        А в каком контексте слово? У него много значений по словарю (редуктор, глушитель, подавитель, ослабитель, делитель...)
                        В программе cga105 в настройках "Супер пользователя" есть вкладка Attenuator, всё что в ней я показал на скриншоте:


                        Я понимаю что это какие-то коэффициенты и напряжения по каналам для модуля 7018, но вот как ими оперировать? :-\

                        Оффлайн REA

                        • Розов Евгений Анатольевич
                        • Глобальный модератор
                        • *****
                        • Сообщений: 1378
                        • Карма: +91/-64
                          • GeoSensor
                        Re: Протокол работы с хроматографом
                        « Ответ #14 : 03 Апрель 2015, 21:02:47 »
                        Если еще актуально, протокол можно взять тут
                        http://geosensor.ru/int/protocols/chro_IMS.zip

                         



                        Покер онлайн