Вход

Просмотр полной версии : Протокол?


mcdmitry
09.01.2006, 12:48
Паша, какой же все таки протокол обмена с МПСЗ для версии 6.12???
:unknown:

zhpaul
09.01.2006, 15:01
все осталось как в 6.11, кроме online режима, в нем конфигурация порта 19200,8,o,1

Тимофей
07.09.2006, 00:11
Вопрос к Павлу.
Не знаю, куда этот вопрос писать правильнее.
Протокол обмена с БК в прикрепленной теме - правильный?
Меня гложет сомнение пока относительно первых 4 байт,
там точно AA 00 55 00 ?
У меня версия 7.7 для ДХ.

zhpaul
07.09.2006, 07:04
Меня гложет сомнение пока относительно первых 4 байт,
там точно AA 00 55 00 ?
скорее AA 00 00 55
Сегодня уточню...
У меня версия 7.7 для ДХ.
от версии не зависит

hosemarkus
07.09.2006, 09:12
скорее AA 00 00 55
Сегодня уточню...
Ай-ай-ай ;)
Пример:
AA 00 55 00 4E 57 2B 20 44 41 44 20 34 20 20 20
20 20 20 20 11 8C FF FF 0F 2C 07 06 81 00 5F 55
00 2A 13 22 04 07 0C 00 7A 08 AA 00 55 00 4E 57
2B 20 44 41 44 20 34 20 20 20 20 20 20 20 11 8C
FF FF 0F 2C 07 06 81 00 5F 55 00 2A 13 22 04 07
0C 00 7A 08 AA 00 55 00 4E 57 2B 20 44 41 44 20
34 20 20 20 20 20 20 20 11 8C FF FF 0F 2C 07 06
81 00 5F 55 00 2A 13 22 04 07 0C 00 7A 08 AA 00
55 00 4E 57 2B 20 44 41 44 20 34 20 20 20 20 20
20 20 11 8C FF FF 0F 2C 07 06 81 00 5F 55 00 2A

zhpaul
07.09.2006, 09:14
:) бывает....

Тимофей
07.09.2006, 10:10
Благодарю за пример,
он то и был мне нужен.

VladFr
11.09.2006, 18:49
Павел, возникло пару вопросов по протоколу обмена с МПСЗ:

1.все осталось как в 6.11, кроме online режима, в нем конфигурация порта 19200,8,o,1 что такое online режим? имелся ввиду рабочий режим?

2. Какие еще отличия, кроме флага ДПКВ, имеют пакеты, передоваемые версией МПСЗ для ДПКВ, от пакетов, передоваемых версией МПСЗ для ДХ ?

Тимофей
11.09.2006, 23:15
Павел,
расскажи пожалуйста,
как перевести задержку в единицах мкс/2 в УОЗ
и соответственно период в тех-же единицах в обороты/мин.
с задержкой мне кажется так должно быть:
51-360*(задержка/период)=УОЗ, но так не получаются правдоподобные числа.
А с частотой, вроде бы так должно быть: 12е07/период=частота (об/мин)
но то-же не получается чисел похожих на правду.
Где я ошибаюсь?

zhpaul
12.09.2006, 08:00
что такое online режим? имелся ввиду рабочий режим?
да
2. Какие еще отличия, кроме флага ДПКВ, имеют пакеты, передоваемые версией МПСЗ для ДПКВ, от пакетов, передоваемых версией МПСЗ для ДХ ?
угол подругому рассчитывается. а еще почитай тут - /forum/showthread.php?t=16

Добавлено через 56 секунд
с задержкой мне кажется так должно быть:
51-360*(задержка/период)=УОЗ
вместо 51, 60 подставь
А с частотой, вроде бы так должно быть: 12е07/период=частота (об/мин)
но то-же не получается чисел похожих на правду.
а откуда 12 то???

VladFr
12.09.2006, 09:00
угол подругому рассчитывается. а еще почитай тут - /forum/showthread.php?t=16Ну /forum/showthread.php?t=16 я изучил довольно подробно, некоторые значения даже уже заучил. :) А про расщет угла подругому, если можно, поподробней.:blush:

zhpaul
12.09.2006, 09:39
на ДПКВ вместо задержки выдается угол в зубах шкива, умноженных на 256, т.е. чтобы получить угол надо
угол = 114 - ((хх / 256) * 6)
где 114 - угол до ВМТ, при котором вырез на шкиве проходит мимо датчика
xx - значение, передаваемое программой
6 - кол-во градусов на 1 зуб маховика

Тимофей
12.09.2006, 17:16
да

а откуда 12 то???

в 1 минуте интервалов в 0,5 мкс будет:
60*1е06*2
так как период в единицах ((1е-06)/2 сек),
а частота в единицах (1/мин)

поэтому, считаю, сколько получается периодов
в одной минуте - получаю: 12е07/период=частота

hosemarkus
12.09.2006, 17:44
Тимофей,
скорее так:
60*1000000/(период*2*х) = 3е07/(период*х) = N об/мин
а тут самое главное: период - одного цикла шторки ДХ, т.е. полоборота КВ, т.е. х = 2
получаем 15е06/период = N об/мин

Во всяком случае, у мну считает так и на экране что-то похожее получается :)

Тимофей
12.09.2006, 17:51
реверс инжинирингом, я 15е06\период тоже получил (229*65535),
но не могу понять,откуда оно взялось и поэтому - не доверяю.

Вообще - уже доверяю,
вроде понятно.
Все дело в том, что это для распредвала.

тогда правда период не в единицах мкс/2,
а в 2*мкс. или в датащите на протокол
дробь не к тому числу.

написано: 23-24. Период в мкс/2
надо так: 23-24. (Период в мкс)/2
или так: 23-24. Период/2 в мкс

zhpaul
13.09.2006, 07:52
hosemarkus,
+1

Тимофей
20.09.2006, 20:53
Вопрос к zhpaul.
При передаче команд изменения параметров от БК к МПСЗ.
Написано, "по одному байту с интервалом 20 мс".
Какое значение имеет этот интервал?
Если не могу добиться его точного соблюдения, его лучше сделать
больше или меньше?

zhpaul
20.09.2006, 20:56
если будет меньше - мпсз не успеет принять команды, т.к. буфер приема там 1 байт (так устроен ком-порт в контроллере), так что лучше больше...

Тимофей
21.09.2006, 17:42
Еще вопрос по протоколу:
Все двухбайтовые величины идут также как контрольная сумма:
(младший байт) -> (старший байт)?

Вопрос снят, проверил экспериментально,
все наоборот,
(старший байт)...(младший байт)

Добавлено через 20 часов 19 минут 26 секунд
zhpaul,
Можно ли считать, что пакеты от МПСЗ идут с равными промежутками времени между пакетами? Для упрощения расчета ускорения КВ в БК.

hosemarkus
21.09.2006, 17:45
Можно ли считать, что пакеты от МПСЗ идут с равными промежутками времени между пакетами? Для упрощения расчета ускорения КВ в БК

не можно, а нужно ;)
все от этого пляшут - 50 пакетов/сек

(брякнул не подумавши, см ниже)

zhpaul
21.09.2006, 20:53
Можно ли считать, что пакеты от МПСЗ идут с равными промежутками времени между пакетами? Для упрощения расчета ускорения КВ в БК.
пакеты идут непрерывно, со скоростью 19200 кбит

hosemarkus
22.09.2006, 10:08
:blush:
да уж, погорячился я слегка насчет всех....
эт я для упрощения по 50 считал,
конечно будет ~46 в секунду (21.8-21.9 мс на пакет)

Добавлено через 37 минут 52 секунды
По уточненным и согласованным с руководством данным:
21.84 мс - 45.8 пакетов/с с учетом погрешности PICа 19231 кбит
:)

Shish
27.09.2006, 00:59
zhpaul,
А может перелопатить протокол если в нем место нужно? Сделать логическую структуру кадров/мультикадров. Типа как CAS на потоке Е1 или т.п. ?

zhpaul
27.09.2006, 06:51
А может перелопатить протокол если в нем место нужно?
да вроде и так хватает...

All
27.09.2006, 16:00
zhpaul пишет:
Начиная с версии 7.9 для ДХ и 0.9 для ДПКВ протокол обмена будет изменен!

Прошивка БК в связи с этим изменится?:search:

zhpaul
27.09.2006, 16:11
Прошивка БК в связи с этим изменится?
ессно! я уже писал, что новая прошивка на БК будет на другом контроллере. А соотв. будет и возможность добавления новых ф-ций, т.к. память у нового контроллера в 2 раза больше. В остальном он не отличается от старого ничем и плата БК меняться не будет.

All
27.09.2006, 16:41
zhpaul, т.е. если МПСЗ будет прошит версией 7.9 для ДХ или 0.9 для ДПКВ, то старые БК с ним работать не смогут?

zhpaul
27.09.2006, 16:44
еще раз повторяю, БК меняться не будет. ТОЛЬКО его прошивка.
Да и со старой прошивкой БК будет работать, только частично. Что именно не будет работать, можно посмотреть, сравнив протоколы.

Smogil
27.09.2006, 18:13
новая прошивка на БК будет на другом контроллере.
Хотелось бы узнать, как скоро можно будет заказать БК с новым контроллером, и когда ожидать 09 версию для ДПКВ 2 катушки.

zhpaul
27.09.2006, 18:22
Хотелось бы узнать, как скоро можно будет заказать БК с новым контроллером
если есть старый БК, то заказать можно только контроллер. А так прошивка для БК пока не готова, завтра начну писать.
когда ожидать 09 версию для ДПКВ 2 катушки
завтра

Smogil
27.09.2006, 18:46
если есть старый БК
БК нет.
Я так понял, если я в понедельник закажу у Вадима БК и обменяю старый МПСЗ на новый, то БК будет с новым контроллером, а МПСЗ с 09 версией ДПКВ 2К.

zhpaul
27.09.2006, 22:22
Я так понял, если я в понедельник закажу у Вадима БК и обменяю старый МПСЗ на новый, то БК будет с новым контроллером
БК - да, с новым контроллером, НО со старой прошивкой.
Читай внимательней, что я писал!!!
прошивка для БК пока не готова, завтра начну писать
ключевое слово НАЧНУ

OlegK
04.10.2006, 19:14
Мысли вслух по поводу протокола:

Если в протокол добавить еще один байтик, который будет порядковым номером блока (его просто инкрементировать по кругу) то в принимающем приложении мы 100% будем знать о пропуске блока (и скольких). Или это реализованно как-то по другому?

Макс
04.10.2006, 20:50
Или это реализованно как-то по другому?
Внимательно прочитай протокол касательно последнего и предпоследнего байта :mega_shok:
/forum/showthread.php?t=16
А потеря одного двух блоков ничем не грозит. Один блок длится 0,002184 сек, это наверное намного меньше времени обновления экрана БК

Shish
04.10.2006, 20:57
OlegK,
Ну тогда уж как в ОКС-7 замутить FSN и BSN (forward sequence number и backward sequence number).

НО, зачем??? :blush:

Добавлено через 5 минут 1 секунду
Макс,
эти байты на определение подлинности пакета, но не ничего не говорят о том сколько пакетов могло потеряться по дороге.

Хотя дубль два - нафига нам это знать

OlegK
05.10.2006, 07:59
OlegK,
НО, зачем??? :blush:

Да фиг его знает, просто мысль такая меня посетила. :unknw:
Может кому и пригодится. А нет, так и чёрт с ней.

zhpaul
05.10.2006, 08:07
информация на БК обновляется каждые 0.5 сек. Блоки принимаются ВСЕ, и инфа о расходе воздуха (полоска внизу) обновляется с КАЖДЫМ пакетом. А на обороты и угол специально делал задержку, иначе цифры сливаются....

Тимофей
08.11.2006, 00:01
zhpaul,
Формат расхода воздуха в последнем опубликованном протоколе обмена с МПСЗ
является актуальным для версии 7.11 ?
то есть 1 байт, значения от 1 до 16 для табличного УОЗ.

zhpaul
08.11.2006, 08:08
является актуальным для версии 7.11 ?
я и забыл.... нет, формат сменился. Сегодня обновлю.

Добавлено через 1 час 6 минут 42 секунды
Обновил...

Тимофей
10.11.2006, 18:41
Павел, я долго читал и перечитывал описание и формулу для расхода воздуха...
Вопрос в следующем: Если в байте №25 последнего протокола (7.11)
поменять местами тетрады байта, я получу значение расхода в диапазоне от 0 до 255?

deus
10.11.2006, 18:48
разве можно думать об таком в пятницу вечером.... :crazy: :wacko:

Тимофей
10.11.2006, 19:17
Не в бровь, а в глаз...
В свое оправдание могу сказать, что сейчас пью пиво.

Макс
10.11.2006, 19:20
Не в бровь, а в глаз...
В свое оправдание могу сказать, что сейчас пью пиво.
Хорошие мысли у тебя лезут когда пьешь пиво! :)

zhpaul
10.11.2006, 22:25
Если в байте №25 последнего протокола (7.11) поменять местами тетрады байта, я получу значение расхода в диапазоне от 0 до 255?
нет, не будет, т.к. дробное и целое значение рассчитывается по разному. Целое число - напрямую, дробное - через наклон ДАД

Тимофей
11.11.2006, 19:33
Павел,
в результате вычислений показаний ДАД по приведенной формуле получается некое число.
Что оно должно означать?

deus
11.11.2006, 20:04
Павел,
в результате вычислений показаний ДАД по приведенной формуле получается некое число.
Что оно должно означать?
:) получается дробное число, которое означает какой сейчас расход. ы?

Тимофей
11.11.2006, 23:54
может так оно и есть, да я в цельночисленной арифметике пытаюсь это рассмотреть.

zhpaul
12.11.2006, 08:40
число это показывает положение режимной точки УОЗ относительно таблиц по разряжению. Например если число равно 4.50 то УОЗ рассчитывается по 4-й и 5-й кривой по расходу...

Аlех
03.12.2008, 20:59
кто-нибудь может мне подсказать что надо отправить блоку чтоб он деактивировал иммобилайзер?
например код иммобилайзера "123"...

8Eh - Иммобилайзер (1 - вкл., 0 - выкл., 2 - активировать однократно и остановить двигатель)
Что-то мне тут непонятно...

zhpaul
03.12.2008, 21:31
Что-то мне тут непонятно...
а чего непонятного то? по адресу 8E посылаем 0, иммо выключен.
Или тебе нужно знать как код послать? Если да, то просто посылаем байты кода. 1 потом 2 потом 3 с паузами в полсекунды.

Аlех
03.12.2008, 21:46
т.е. можно просто послать 8E 0 8E и иммо полюбому выключиться даже без кода?

zhpaul
03.12.2008, 22:49
т.е. можно просто послать 8E 0 8E и иммо полюбому выключиться даже без кода?
НЕТ! Чтобы МПСЗ начало принимать управляющие байты, надо сначала код ей послать. До этого ей пофиг чего вы пихаете в порт. Она воспримет только правильные первые цифры кода после включения зажигания, остальное будет игнорироваться.

Добавлено через 1 минуту 10 секунд
а вот когда будет послан правильный код и мпсз включится, вот тогда можно и 8e 0 8e чтобы в следующий раз код больше не спрашивала.

Аlех
10.12.2008, 12:24
zhpaul,
спасибо. Буду пробывать.

Аlех
21.11.2011, 01:03
Холодает. Снова актуален автозапуск и я снова задумался соорудить "обходчик" иммобилайзера МПСЗ. Как-то с включенным иммо спать спокойнее :)

Павел, что конкретно нужно заслать в МПСЗ чтоб деактивировать иммо? К примеру установленный код деактивации 1 2 3. Я так понимаю на 19200,8,n,1 надо заслать 0х01 0х02 0х03? Или что-то еще?
Не хочется возится в машине и сниферить обмен БК и МПСЗ...хочется в тепле спаять и чтоб прям из под паяльника заработало :)

zhpaul
21.11.2011, 05:28
Я так понимаю на 19200,8,n,1 надо заслать 0х01 0х02 0х03?
да .

the_XPOH
02.03.2012, 23:54
Паша, подскажи, контрольная сумма пакета - просто сумма всех байт с нулем?

Порылся по форуму, нашел - сложением :)

Аlех
26.10.2012, 17:02
Иммо я кстати победил. Теперь он автоматически выключается сигналкой при автоматическом запуске. Так же сигналка может принудительно заглушить двигатель через иммо. Весьма удобно получилось. Хочу к этому еще RFID прилепить и вообще счастье будет.

Теперь с наступлением холодов хочу замутить себе Реле-регулятор с термокомпенсацией и прочими фенечками :) В общем то аналог ТОРН Адамчука...
Данные об оборотах, ДАД и ПХХ хочу брать от МПСЗ.
Вопрос:
29 байт - Флаги

Бит0 - клапан
Бит1 - концевик
Бит2 - 1 - коррекция по ДД вкл., 0 - автопостроение кривой усиления ДД
Бит3 - инверсия концевика карбюратора
Бит4 - иммобилайзер. 1 - активирован, 0 - не активен
Бит5 - лампа неисправности двигателя. 1 - горит, 0 - не горит
Бит7 - флаг ДПКВ
Бит 0 чему равен при ПХХ?

alex23mv
26.10.2012, 22:39
Иммо я кстати победил. Теперь он автоматически выключается сигналкой при автоматическом запуске.
можно по подробнее как это реализовать?

zhpaul
27.10.2012, 09:17
Бит 0 чему равен при ПХХ?
при ПХХ клапан выключен, соотв. бит этот равен 0

Аlех
27.10.2012, 12:07
zhpaul, спасибо!
alex23mv,
можно по подробнее как это реализовать?
Это схема на МК. По свободе могу выложить прошивку и примерную схему. Для ее работы нужен БК т.к. код в память МК заносится с БК. Ну и транзисторы конвертера TTL-RS232 тоже из БК используются.