avatar_sergey.67

Программирование кареточных моторов BBS01, BBS02.

Автор sergey.67, 11 Май 2014 в 00:03

« назад - далее »

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

acyd

#18
[user]fondrosel[/user], почти все микропроцессоры перепрограммируются подобным способом, поэтому кабели одни и те же, а вот информация, которая по ним передается, конечно разная для разных контроллеров.
Есть еще отличия: н-р в инфинеон можно только данные послать, а считать возможности не предусмотрено, а в бафанге можно и считывать и записывать, что удобно. Это уже особенности ПО.
Pекомендую после подключения считать все данные (там есть кнопочка), и сохранить, чтобы не потерять настройки.
Еще в ПО бафанга жуткие ограничения, т.е токи и напряжения изменяются в малом диапазоне, обычно в сторону уменьшения от номинала, чтобы не убить.
ссылка на архив, в открывшемся окне выбрать "файл->скачать"
https://drive.google.com/file/d/0Bw59cTuRZg0PbzgyYXBFSG9jTVE/edit?usp=sharing

programmer001

#19
Насчет шнурка для программирования.
Посоветовался с нашим спецом по разработке компьютерного железа.
Он говорит:
Обычный USB кабель никуда воткнуть напрямую нельзя, только в USB.
Там используется адаптер на основе FTDI, с его выхода
получают нормальные сигналы UART уровня TTL.
Тебя не должен вводить в заблуждение размер адаптера,
он вполне умещается в разъеме USB.
Ты думаешь - просто кабель, на самом деле - адаптер.
Нужно выбрать тот у которого питание схемы ввода/вывода (TX, RX)
обеспечивает сам адаптер. Похоже что это +5Вольт.
(Да, так пишут на endless-spere)
Можно взять в ЭФО (Питер):
http://www.efo.ru/doc/Ftdi/Ftdi.pl?747
Смотри в конце страницы, найди модуль TTL-232R.
Это фирменный продукт FTDI с хорошей документацией,
а не "кот в мешке" из подвала дядюшки Ляо.

Ну, а из подвалов дядюшки Ляо можно выбрать из этого:
http://www.ebay.com/sch/i.html?_sacat=0&_from=R40&_nkw=USB+TTL+FTDI+cable&rt=nc&LH_BIN=1

Что-то не нашел, где продается  разъём 5-штырьковый, как от контроллера.
Тогда подключать к штырькам "папа" контроллера буду при помощи нарезанного
пустого стержня шариковой ручки.
Или, может быть, разрежу кабель к дисплею  и включу туда другой 5-штырьковый разъём.
И к USB кабелю приделаю такой же разъём.
Тогда легко будет включаться, отключаться.
1) Двухподвес, mid-drive Bafang 1000W+редукторник 350W, Li-ion 5х12Ah 58.4V, max 53 км/ч. Дальность 120-150 км без педалей.
2)Reggy (Hulong) двухподвес, 370W, скорость:32

dr. Argentoom

поробовал сёдня перепрограммировать контроллер с товарищем Мандарином.
Задолбал ассист и ручка газа с задержками и узким диапазоном работы.
Кое как подцепились к штырькам "папа".
Тыкали тыкали... и на первом включении после программирования дисплей показывал err 4
В итоге после трёхчасового мучения мы имеем - мотор работает только с ассиста, на ручку газа не реагирует никак.
Киньте пожалуйста скрины всех трёх вкладок, как оно должно быть по умолчанию

dr. Argentoom

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


а вот тут поставил 1:


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

Потом всё вернул, но ручка газа так и молчит :(

acyd

не факт что значения на скринах прошиты в контроллер,
когда запускаешь программу - там значения отличные от тех, что в контроллере, возможно неработоспособные, по-этому перед сменой надо сделать считывание всех параметров с контроллера [Read Flash].
А после этого сделать [Write Flash].
Потому что просто команды Read/Write работают только с текущей страницей.

[user]dr. Argentoom[/user], Запусти прогу, нажми [Read flash] и сделай  скрины всех трех реальных страниц, я также сделаю, посмотрим где разница.
А то у тебя на скринах и контроллер не определен и нет 1-й странички.

У меня еще был случай, когда шнур плохо контачил, и в контроллер прошился мусор -  значение тока было под 40а, уровни пас имели случайные числа.

dr. Argentoom

который час бьюсь, всё бестолку  :ireful:
на ручку газа так и не реагирует. Похоже сгорело что то в контроллере, когда я случайно замкнул контакты внутри разъёма (кондёр был заряжен и он разрядился на какие то контакты). Не мог же холл в ручке газа сгореть.



acyd

поглядел свои настройки -
принципиально отличается только 4-й пункт на 3-й страничке:
Designated assist у тебя 9, а у меня "by display command"

dr. Argentoom

в общем после долгой и мучительно "борьбы" с настройками решил, что надо бы проверить ручку газа. Поставил другую и вуаля - всё заработало. Стало быть сгорел холл в штатной ручке газа (но почему, с чего вдруг?)  :bn:

Для новой ручки газа сделал такой разъём:
раскурочил видеовыход у старой видяхи и достал оттуда штырёчки


припаял к проводам и одел термуху


вставил в разъём на веле и залепил эпоксилином дуо


когда засохнет, одену термуху. Будет цивильно и влагозащищено :-)

ra6fnq

А я, когда ставил жене её привычную половинку, просто перепаял с курка кабель - 3 минуты дел...
Евгений
http://fotki.yandex.ru/users/ra6fnq/
https://yadi.sk/d/8wi9CuXnvvFRh - инструкции на Bafangs

Mandarin

Оу, все-таки ДХ виноват.  :-\

[user]dr. Argentoom[/user], скажи хоть, какой ДХ стоял в родной ручке газа.
Ригид GT Avalanche 2.0 MAC 8T front + infineon EB309 cellman | 14S LiPo "Монстры" | Meanwell NES-350-48 (x1, x2) в качестве зарядника. Делаю лигерад :D (Прогресс: 75%, пробег: 3691 км)

Ампервел

Да уж как обычно какая то мелочь, а думаешь совсем на другое.

dr. Argentoom

Цитата: Mandarin от 26 Июнь 2014 в 22:02
Оу, все-таки ДХ виноват.  :-\

[user]dr. Argentoom[/user], скажи хоть, какой ДХ стоял в родной ручке газа.
в родной ручке датчик S49EH

Flo0op

Привет всем) Откатал на своем бафанге около 300 км, и руки зачесались... почитал про перепрограммирование и понял, что хочу уменьшить паузу после нажатия на курок и сделать так чтобы звезда останавливалась сразу, так вот купил провод для программирования инфениона, разобрал разъем VGA, что бы достать маму, в общем полез программировать.....
Короче говоря разрядил я кондер на какой-то из штырьков разъема контроллера, подключиться к контроллеру так и не смог, собрал все обратно, нажимаю на кнопку включения и тишина.... экран не загорается((((
Мог я что-то спалить в контроллере таким образом?
С чего начать диагностику?

п.с. аккум был все время отключен..

sergey.67

Цитата: Flo0op от 23 Июль 2014 в 20:47
Привет всем) Откатал на своем бафанге около 300 км, и руки зачесались... почитал про перепрограммирование и понял, что хочу уменьшить паузу после нажатия на курок и сделать так чтобы звезда останавливалась сразу, так вот купил провод для программирования инфениона, разобрал разъем VGA, что бы достать маму, в общем полез программировать.....
Короче говоря разрядил я кондер на какой-то из штырьков разъема контроллера, подключиться к контроллеру так и не смог, собрал все обратно, нажимаю на кнопку включения и тишина.... экран не загорается((((
Мог я что-то спалить в контроллере таким образом?
С чего начать диагностику?

п.с. аккум был все время отключен..
Если у Вас напряжение с конденсатора попало на ножки RX или TX, то вполне возможно сгорание одноименных портов микроконтролера дисплея и или контролера двигателя. А при вращении педалей или ручки газа мотор запускается? Если нет попробуйте отключив разъем дисплея замкнуть на разъеме контакты PL и P+ и затем снова попробуйте запустить мотор. Картинка распиновки разъема есть в первом сообщении.

Flo0op

Все манипуляции я проводил на фишке контролера при отключенном дисплее... так что это не он. Попробовал соединить PL и P+ и прокрутить педали (это ведь равнозначно включению от кнопки, т.е. 1 режим асиста должен быть включен?) и от курка - реакции никакой(((
А контролер залит компаундом и лезть туда смысла нет я так понимаю?

Ev

Недавно я купил BBS02 c новой версией контроллера (750W, 25A, 9 FET). Проблема состоит в том, что старая версия ПО с ним не работает (сам пока не пробовал, так пишет народ с endless-sphere).  :~-(
Ещё немного подождём новой версии ПО, а там придётся ковырять протокол обмена с контроллером и писать что-то своё. Тут народ уже задался этим вопросом: http://endless-sphere.com/forums/viewtopic.php?f=28&t=58780&start=325#p924685 Возможно, в новой версии контроллера просто изменен некий идентификатор, видя который, ПО отказывается работать с этой неизвестной версией контроллера.
Кстати, у продавцов уже есть возможность программирования: http://endless-sphere.com/forums/viewtopic.php?f=28&t=58780&start=350#p925553 

Ev

Ну что, приступим?  ;-) Сначала разберёмся со старой версией контроллера.
Я расшифровал посылку, которую записали пользователи с endless-sphere (по всей видимости, это обмен со старым контроллером):

Послано: 11 51 04 b0 05
Это процедура "Connect", выполняется по нажатию одноименной кнопки.

11 - header
51 - command (connect) ?
04 b0 - скорость обмена (1200 бод)
05 - контрольная сумма без заголовка ((51+04+b0) mod 256)


Получено: 51 10 48 5a 58 54 53 5a 5a 36 32 32 32 41 4d 74 02 14 8c
Эти данные отображаются в том окне, где расположена кнопка Connect

51 - Read controller version respond (дословный перевод с китайского)
10 48 5a 58 54 - Manufacturer (HZXT)
53 5a 5a 36 - Model (SZZ6)
32 32 - Harware Ver (2.2)
32 41 4d 74 - Firmware Ver (2.?.?.?) 3 символа из 4 не получается перевести в цифры. Другая кодовая таблица?
02 - Nominal Voltage (48V) (0=>24V; 1=>36V; 2=>48V; 3=>60V; 4=>24-48V; другое=>24-60V)
14 - Max.Current (20A)
8c - контрольная сумма? Похоже, в программе не используется

Далее, можно приступать к разбору обменов при нажатии кнопок "Read Flash" и "Write Flash". Может кто-нибудь записать обмены с контроллером при нажатии этих кнопок (например, этой программой http://www.serial-port-monitor.com/)?

Sattva

Прекрасное дело делаете EV, но составить вам компанию по реверсу могут единицы в этой жизни,
и едва ли кто-то с форума. Моих знаний пока недостаточно.  :ah: