Автор Тема: gs232 трекеры  (Прочитано 2627 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Онлайн R2GKH Виталий

  • Ветеран
  • *****
  • Сообщений: 4795
  • Репутация: +690/-368
  • the Truth is out There...
    • Мысли вслух :)
  • QRA: KO92GP
gs232 трекеры
« : 04 Февраля 2023, 10:06:02 »
Коллеги, вопрос назрел: А кто какими программами-трекерами пользуется?
PstRotator, EME System V7 (F1EHN), Orbitron

 Что еще?

Интересует программа, которая может управлять повороткой  по протоколу GS232 в РУЧНОМ РЕЖИМЕ.
Команды S,L,R,U,D,C2 и пр. 
 
P.S. Орбитрон, кстати, недавно расстроил - обновил TLE, а расположение МКС неверно.
Мы стояли на плоскости,
                  С переменным углом отражения...

Оффлайн UA9FAD

  • Ветеран
  • *****
  • Сообщений: 10084
  • Репутация: +1857/-122
  • QRA: LO88AA
Re: gs232 трекеры
« Ответ #1 : 04 Февраля 2023, 11:42:35 »
P.S. Орбитрон, кстати, недавно расстроил - обновил TLE, а расположение МКС неверно.

Меня он тоже расстраивал летом - по спутникам Галлилео погрешность 2 - 5 градусов.
Обновление с : http://www.celestrak.com/NORAD/elements/x-comm.txt   А Луна и Солнце нормально. От конспиролога - может специально "маскируют"?
« Последнее редактирование: 04 Февраля 2023, 11:45:30 от UA9FAD »
Victor Виктор

Онлайн R2GKH Виталий

  • Ветеран
  • *****
  • Сообщений: 4795
  • Репутация: +690/-368
  • the Truth is out There...
    • Мысли вслух :)
  • QRA: KO92GP
Re: gs232 трекеры
« Ответ #2 : 04 Февраля 2023, 12:27:54 »
От конспиролога - может специально "маскируют"?

Кто их знает... А в Андроиде нормально вроде. Правда последнее время проверить не могу - пасмурно. И даже "зеленую комету" понаблюдать не удалось :(

Ну, это все лирика. Если вернуться к GS232, то у меня появилась толика свободного времени. А коллега попросил дистанционное управление двухкоординатной камерой слепить "на коленке". Алгоритм в Баскоме для AtMega8 (328) накидал, даже опробовал - команды идут, обратная связь есть (PSTRotator DEMO отрабатывает). Можно конечно и Delphi7 вспомнить - потренироваться, ну уж больно топорный интерфейс получается, рисовать не умею. Хотя скорее всего придется, все  калибровки и настройки через Терминал.   
Мы стояли на плоскости,
                  С переменным углом отражения...

Оффлайн RC3UE

  • Ветеран
  • *****
  • Сообщений: 1710
  • Репутация: +333/-80
  • 13 el F9FT/21 el F9FT
  • QRA: LO07NG
Re: gs232 трекеры
« Ответ #3 : 04 Февраля 2023, 12:30:09 »
Использую  RotorCraft совместно с самодельной повороткой  (на ардуино).
Вот тут есть готовая сборка для винды и исходники для компиляции на линукс.
У меня второе.
« Последнее редактирование: 04 Февраля 2023, 12:33:20 от RC3UE »
73! Александр RC3UE (ex RA3UJ, UA3UES)

Онлайн R2GKH Виталий

  • Ветеран
  • *****
  • Сообщений: 4795
  • Репутация: +690/-368
  • the Truth is out There...
    • Мысли вслух :)
  • QRA: KO92GP
Re: gs232 трекеры
« Ответ #4 : 04 Февраля 2023, 13:00:12 »
RotorCraft совместно с самодельной повороткой  (на ардуино).

Видел, спасибо за напомнинание... Запустил. Данные и команды на трекер идут. а обратно?
Александр, не взглянете "в сырцах" формат строки, что трекер передает на контроллер? Как отвечает на запрос С или С2. 
Мы стояли на плоскости,
                  С переменным углом отражения...

Оффлайн RC3UE

  • Ветеран
  • *****
  • Сообщений: 1710
  • Репутация: +333/-80
  • 13 el F9FT/21 el F9FT
  • QRA: LO07NG
Re: gs232 трекеры
« Ответ #5 : 04 Февраля 2023, 14:15:49 »
Данные и команды на трекер идут. а обратно?
Не въезжаю.. "Обратно" - это откуда и куда?
Александр, не взглянете "в сырцах" формат строки, что трекер передает на контроллер? Как отвечает на запрос С или С2.
В каких сырцах? RotorCraft-а? Так я их не изучал. Тупо скомпилил бинарник и всё.
К сожалению, подробности уже не помню.. :(
Вот фрагмент кода (моего), который общается с RotorCraft//++++++++++++++++++++++++++++++++++++++++++++++++++
    if (SerialSF.available()>0) {
    // get the new byte:
    char inChar = (char)SerialSF.read();
    // add it to the inputString:
    inputString += inChar;
    // if the incoming character is a newline, set a flag
    // so the main loop can do something about it:
    if (inChar == '\n') {
      stringComplete = true;
    }
  }
     if (stringComplete) {
      if(inputString.startsWith("C")) {
        SerialSF.print("+0");
        if(trx.state.lastAngle < 100) SerialSF.print("0");
        if(trx.state.lastAngle < 10) SerialSF.print("0");
        SerialSF.println(CAngle);
      }

      if(inputString.startsWith("R")) {
        if(trx.state.ErrorDirect != 1) trx.ExecCommand(cmdTurnRight,0);
      } else if(inputString.startsWith("L")) {
        if(trx.state.ErrorDirect != -1) trx.ExecCommand(cmdTurnLeft,0);
      } else if(inputString.startsWith("M")) {
        start_pos = CAngle;
        stop_pos = string_to_int(inputString.substring(1));
        int offset = 0;
        int koeff = 1;

        offset = (stop_pos - 145) - (start_pos - 145);
        if ((start_pos > 145 && stop_pos < 145) || (start_pos < 145 && stop_pos > 145)) koeff = koeff*-1;
        if (offset*koeff < 0)
        {
          trx.ExecCommand(cmdTurnLeft,0);
          flagset = 1;
        }
        else
        {
          trx.ExecCommand(cmdTurnRight,0);
          flagset = 1;
        }
      }
      inputString = "";
      stringComplete = false;
    }
//+++++++++++++++++++++++++++++++++++++++++++++++++
SerialSF  - это software RS232 (ардуино).
CAngle - это угол азимута (элевации нет), считанный из AS5600 и скорректированный для правильного отображения.
На число "145" не обращайте внимания. Это "0 градусов" для моей поворотки.
« Последнее редактирование: 04 Февраля 2023, 14:20:33 от RC3UE »
73! Александр RC3UE (ex RA3UJ, UA3UES)

Оффлайн RC3UE

  • Ветеран
  • *****
  • Сообщений: 1710
  • Репутация: +333/-80
  • 13 el F9FT/21 el F9FT
  • QRA: LO07NG
Re: gs232 трекеры
« Ответ #6 : 04 Февраля 2023, 14:42:34 »
Кстати..
управление двухкоординатной камерой
Я похоже, поспешил, предлагая вам RotorCraft.. Он же только "азимутальный"..
73! Александр RC3UE (ex RA3UJ, UA3UES)

Онлайн R2GKH Виталий

  • Ветеран
  • *****
  • Сообщений: 4795
  • Репутация: +690/-368
  • the Truth is out There...
    • Мысли вслух :)
  • QRA: KO92GP
Re: gs232 трекеры
« Ответ #7 : 04 Февраля 2023, 14:53:28 »
Нет, Александр, все норм...
Я и стараюсь сделать подборку програм, так или иначе работающих с протоколом gs232 и его разновидностями.

Далее будет протокол EasyComm и ещё что то...
Мы стояли на плоскости,
                  С переменным углом отражения...

Онлайн Михалыч

  • Ветеран
  • *****
  • Сообщений: 11023
  • Репутация: +3628/-136
  • RDA: PS-23
  • QRA: KO37wa
Re: gs232 трекеры
« Ответ #8 : 04 Февраля 2023, 15:09:07 »
сделать подборку програм

ещё пара, с кнопками
"Scio me nihil scire"  73! UA1019SWL Игорь. 

Оффлайн UD6ACU

  • Пользователь
  • **
  • Сообщений: 9
  • Репутация: +0/-1
  • Подпись находится в стадии разработки
  • QRA: LN04GV
Re: gs232 трекеры
« Ответ #9 : 06 Июня 2025, 14:05:55 »
Собираю тоже контроллер поворота антенны на arduino, использую программу pstRotator в ней выбрал протокол GS-232 Yaesu 360 deg. Контроллер управляется , но не отображает фактический градус нахождения антенны. Подскажите, в каком формате должен контроллер отправлять координаты в порт после запроса "C" от компьютера? Сейчас он шлёт AZ=градус EL=градус.

Онлайн R2GKH Виталий

  • Ветеран
  • *****
  • Сообщений: 4795
  • Репутация: +690/-368
  • the Truth is out There...
    • Мысли вслух :)
  • QRA: KO92GP
Re: gs232 трекеры
« Ответ #10 : 06 Июня 2025, 15:31:02 »
Подскажите, в каком формате должен контроллер отправлять координаты в порт после запроса "C" от компьютера? Сейчас он шлёт AZ=градус EL=градус.

После "C" отправляется только азимут. Вместе с элевацией запрос виден как "C2".
И еще, GS232 имеет два формата ответа. Первый описан вами, второй имеет вид "+XXXX YYYY<cr>".
Вот, кусочек кода из Баскома:

dim prn_strout as string*32
dim prn_buf(32) as byte  at prn_strout  overlay

 if gs232_form="A" then
         prn_strout="+0000 0000" ' +&H0d
         prn_buf(3)=prn_tmp(1)+$30
         prn_buf(4)=prn_tmp(2)+$30
         prn_buf(5)=prn_tmp(3)+$30
         prn_buf(8)=prn_tmp(4)+$30
         prn_buf(9)=prn_tmp(5)+$30
         prn_buf(10)=prn_tmp(6)+$30
      end if

      if gs232_form="B" then
         prn_strout="AZ=000 EL=000" ' +&H0d
         prn_buf(4)=prn_tmp(1)+$30
         prn_buf(5)=prn_tmp(2)+$30
         prn_buf(6)=prn_tmp(3)+$30
         prn_buf(11)=prn_tmp(4)+$30
         prn_buf(12)=prn_tmp(5)+$30
         prn_buf(13)=prn_tmp(6)+$30
      end if

print prn_strout


« Последнее редактирование: 06 Июня 2025, 15:35:29 от R2GKH Виталий »
Мы стояли на плоскости,
                  С переменным углом отражения...