Перейти к содержанию

Слетают параметры в PIC18lf2523 и антиреклама AWD 10


E_C_C

Рекомендуемые сообщения

У линии два конца. ADM485 работает в режиме Half-Duplex, значит нагрузочные резисторы ставятся с обоих сторон. Это в режиме Full-Duplex ставят только со стороны приемника.

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Особенности хранения литиевых аккумуляторов и батареек

Потеря емкости аккумулятора напрямую зависит от условий хранения и эксплуатации. При неправильном хранении даже самый лучший литиевый источник тока с превосходными характеристиками может не оправдать ожиданий. Технология, основанная на рекомендациях таких известных производителей литиевых источников тока, как компании FANSO и EVE Energy, поможет организовать правильный процесс хранения батареек и аккумуляторов. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

не только ПО но и схемотехника  с топологией платы.
старая презенташка от микротельных (уже не раз выкладывал)

FLR10.pdf

Изменено пользователем IMXO
Ссылка на комментарий
Поделиться на другие сайты

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

На физическом уровне да, сложно. А вот в обработчике протокола - милое дело. На этом косячили многое производители. Сразу вспоминается ОВЕН с их ТРМ202

Жизнь не белая или чёрная, а в мелкую серенькую полосочку...

Ссылка на комментарий
Поделиться на другие сайты

9 минут назад, Piotr__1 сказал:

А вот в обработчике протокола - милое дело.

Ну не знаю. Как по мне, протокольная часть - это самая простая часть ПО. Особенно когда этой что-то стандартное, типа модбас.

Ссылка на комментарий
Поделиться на другие сайты

Если интересно, вот инструкция на плату. Там протокол описан. А так у них свой фирменный софт под винду, через него и подключаюсь.

AWD10.pdf

Вот снова принесли нерабочую плату, считал параметры в файл.

0	0	Сетевой адрес	17408
1	1	Смещение нуля внешнего аналогового входа 1	0
2	2	Смещение нуля внешнего аналогового входа 2	4
3	3	Смещение нуля аналогового входа ЭДС двиг.	5
4	4	Смещение нуля внешнего аналогового входа Ток	6
5	5	Резерв	1023
6	6	Резерв	1023
7	7	Резерв	1023
8	8	Резерв	1023
9	9	Резерв	5000
10	A	Резерв	5000
11	B	Резерв	5000
12	C	Резерв	5000
13	D	Ограничение минимального значения ШИМ	0
14	E	Ограничение максимального значения ШИМ	993
15	F	Пропорциональный коэффициент ПИД регулятора, Кп	10
16	10	Интегральный коэффициент ПИД регулятора, Ки	5
17	11	Дифференциальный коэффициент ПИД регулятора, Кд	0
18	12	Резерв	255
19	13	Резерв	255
20	14	Резерв	255
21	15	Ограничение пропорциональной части ПИД регулятора	1008
22	16	Ограничение интегральной части ПИД регулятора	1000
23	17	Ограничение дифференциальной части ПИД регулятора	1023
24	18	Коэффициент периода вычисления ПИД регулятора, Тк	600
25	19	Коэффициент времени задержки перед измерением ЭДС двигателя, Тз	10
26	1A	Количество измерений ЭДС двигателя	16
27	1B	Ограничение максимального тока двигателя	15
28	1C	Режим работы платы	28672
29	1D	Максимальная частота вращения вала энкодера	30
30	1E	Количество импульсов на оборот энкодера	64
31	1F	Дифференциальное значение	0
32	20	Зона нечувствительности	21
33	21	Скорость, при которой изменяется направление вращения	255
34	22	Скорость вращения при принудительном управлении	512
35	23	Коэффициент усиления	255
36	24	Макс. скорость в режиме стаб. момента	1023

 

Сразу бросается в глаза сетевой адрес - 17408, при том, что он может быть от 00 до FF. 

Но при этом плата поключилась по адресу 5. Как и должно быть.

И режим 28672 это  двоичное 111000000000000

а 16384 это 100000000000000.   Спрашивается, зачем переписывается параметр который только на чтение должен работать и только при старте МК ? Пришло питание, прочитали еепром, поняли какая у нас конфигурация, и все дальше крутится основной цикл, в еепром вообще нет нужды залазить.

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

А вот рабочие.

 

0	0	Сетевой адрес	5
1	1	Смещение нуля внешнего аналогового входа 1	3
2	2	Смещение нуля внешнего аналогового входа 2	4
3	3	Смещение нуля аналогового входа ЭДС двиг.	5
4	4	Смещение нуля внешнего аналогового входа Ток	6
5	5	Резерв	1023
6	6	Резерв	1023
7	7	Резерв	1023
8	8	Резерв	1023
9	9	Резерв	5000
10	A	Резерв	5000
11	B	Резерв	5000
12	C	Резерв	5000
13	D	Ограничение минимального значения ШИМ	0
14	E	Ограничение максимального значения ШИМ	993
15	F	Пропорциональный коэффициент ПИД регулятора, Кп	10
16	10	Интегральный коэффициент ПИД регулятора, Ки	5
17	11	Дифференциальный коэффициент ПИД регулятора, Кд	0
18	12	Резерв	255
19	13	Резерв	255
20	14	Резерв	255
21	15	Ограничение пропорциональной части ПИД регулятора	1008
22	16	Ограничение интегральной части ПИД регулятора	1000
23	17	Ограничение дифференциальной части ПИД регулятора	1023
24	18	Коэффициент периода вычисления ПИД регулятора, Тк	600
25	19	Коэффициент времени задержки перед измерением ЭДС двигателя, Тз	10
26	1A	Количество измерений ЭДС двигателя	16
27	1B	Ограничение максимального тока двигателя	15
28	1C	Режим работы платы	16384
29	1D	Максимальная частота вращения вала энкодера	30
30	1E	Количество импульсов на оборот энкодера	64
31	1F	Дифференциальное значение	0
32	20	Зона нечувствительности	21
33	21	Скорость, при которой изменяется направление вращения	255
34	22	Скорость вращения при принудительном управлении	512
35	23	Коэффициент усиления	255
36	24	Макс. скорость в режиме стаб. момента	1023

 

Изменено пользователем E_C_C
Ссылка на комментарий
Поделиться на другие сайты

1 час назад, Piotr__1 сказал:

ОВЕН как раз с модбасом прокололся...

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

 

22 минуты назад, E_C_C сказал:

... инструкция на плату. Там протокол описан. 

И при этом он не назван как modbus. ;)

Изменено пользователем READART
Ссылка на комментарий
Поделиться на другие сайты

26 минут назад, E_C_C сказал:

Вот снова принесли нерабочую плату, считал параметры в файл.

если несколько раз считывать, всегда одинаковые данные считывает?

Ссылка на комментарий
Поделиться на другие сайты

1 минуту назад, donec сказал:

всегда одинаковые данные считывает?

Да, два три считывания дают одинаковые результаты. А больше я не пробовал.

Ссылка на комментарий
Поделиться на другие сайты

Если предположить, что ПО на компе считывает данные нормально (т.е. сходится контрольная сумма), а данные о адресе от блока это 16 битная переменная, то блок отвечает правильно, а ошибка в том, что слетели данные именно в прошивке.

Ссылка на комментарий
Поделиться на другие сайты

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

При работе блока посмотри осциллографом, желательно аккумуляторным, что творится на линии RS-485.

А, это вообще пипец

SkipCV: Способ обработки контрольной суммы в поле CS

1 = При приеме данных игнорировать контрольное значение в поля CS. При передаче ответа поле CS равно 0x00.

0 = При приеме данных обрабатывать контрольное значение, находящееся в поле CS. При передаче ответа в поле CS находится рассчитанное контрольное значение

Если настройка равна 1, то достаточно не нулевого значения Data0 и будет запись вместо чтения.

Ссылка на комментарий
Поделиться на другие сайты

3 часа назад, E_C_C сказал:

Пришло питание, прочитали еепром, поняли какая у нас конфигурация, и все дальше крутится основной цикл, в еепром вообще нет нужды залазить.

это очень зависит от того как писали код... и как описаны переменные
в одном случае данные с еепром будет переписаны в РОН (регистр общего назначения)
в другом будет прямое обращение к ЕЕПРОМ.

Ссылка на комментарий
Поделиться на другие сайты

3 часа назад, READART сказал:

из-за чего на сегодня он фактически потерял свойства стандарта.

ндаа... хотел посмеяться а потом заплакал.

3 часа назад, READART сказал:

Проще говоря, сейчас у каждого изготовителя оборудования свой модбас.

Примерчик не приведете? А то не верится.

3 часа назад, READART сказал:

И при этом он не назван как modbus. 

Может потому, что это не ModBus?

2 часа назад, donec сказал:

А, это вообще пипец

О чем и предполагалось выше. Все сходится к кривой обработке сигналов интерфейса и возможно нештатной записи параметров из-за помех.

Жизнь не белая или чёрная, а в мелкую серенькую полосочку...

Ссылка на комментарий
Поделиться на другие сайты

Это очень исковерканный (под себя) modbus. Адрес устройства, код команды (собственные значения), адреса регистров, названные Param0 и Param1, значения этих регистров в полях Data0 и Data1. Все слизано (с некоторыми извращениями) с ModBus. Исключение составляет поле Status, полученное за счет сокращения КС с 16-бит до 8-бит.

Ссылка на комментарий
Поделиться на другие сайты

40 минут назад, Piotr__1 сказал:

Примерчик не приведете? А то не верится.

Из прошлого опыта: у терморегуляторов ОВЕН старший и младший байты измеряемого значения при передаче были  местами попутаны, в результате на экране не овеновского HMI отображается фуфло.  Причем в протоколе модбаса порядок следования байтов, насколько я помню, не описан.

 

Ссылка на комментарий
Поделиться на другие сайты

@READART Да, не описан, и подовляющее большинство устройств умеющих в Modbus Master имеют настройку порядка следования бит и байт в посылке. Потому говорить о перепутанном порядке байт некорректно.

Жизнь не белая или чёрная, а в мелкую серенькую полосочку...

Ссылка на комментарий
Поделиться на другие сайты

1 час назад, Piotr__1 сказал:

Что-то я не помню такой настройки например в HMI. 

Что-то я не помню такой настройки например в HMI. 

Изменено пользователем READART
Ссылка на комментарий
Поделиться на другие сайты

2 часа назад, READART сказал:

Причем в протоколе модбаса порядок следования байтов, насколько я помню, не описан.

В спецификации которая на modbus.org   описан

 

Ссылка на комментарий
Поделиться на другие сайты

@READART цитаты не переписыйвайте в ответах.

1 час назад, READART сказал:

Что-то я не помню такой настройки например в HMI. 

HMI - целый класс устройств начиная с кнопочек и лампочек. Уточните что вы подразумевали под HMI  в своем ответе.  Допустим у панелей Wientek эти настройки есть точно, причем вплоть до отдельных переменных. Первые вспомнившиеся русско-китиайские ONI от IEk :

440510707_.png.0c189384759daffeecdc54b6496d4451.png

Жизнь не белая или чёрная, а в мелкую серенькую полосочку...

Ссылка на комментарий
Поделиться на другие сайты

8 часов назад, Piotr__1 сказал:

Уточните что вы подразумевали под HMI  в своем ответе.  Допустим у панелей Wientek 

Я имею ввиду целый класс устройств таких, как омроновские, шнайдеровские и дельтовские HMI.  Впрочем я не буду утверждать, что такая настройка не была введена впоследствии повсеместно.

 

8 часов назад, donec сказал:

на modbus.org   описан

Я в свое время этого не нашел, поэтому можно поконкретнее?

 

-----------------------------------

Есть пример и посвежее.

https://forum.cxem.net/index.php?/topic/258086-rs485-в-параллель/#comment-3787681

В процессе ремонта этого CNC обнаружилось, что расшифровка посылок анализатором не удается из-за ошибки по контрольной сумме. 

Отсюда вопрос: протокол modbus описывает формулу расчета CRC или относительно её расчета кто во что горазд?

 

Изменено пользователем READART
Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...