avatar_ArtDen

Переделка курка на менее резкий старт

Автор ArtDen, 19 Июль 2019 в 18:34

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

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

13_chip_13

Цитата: Алекс Сочи от 28 Авг. 2022 в 14:20Владельцы мощных самокатов постоянно сталкиваются с перегревом моторов и контроллеров, поэтому покупателей на такой плавный газ будет в разы больше, чем на обычный.
Не будет 😁,  эта опция вообще не решает, уж поверь, она у меня есть как бы

Алекс Сочи

Цитата: 13_chip_13 от 28 Авг. 2022 в 15:47Не будет,  эта опция вообще не решает, уж поверь, она у меня есть как бы
Я считаю, что многие хотели бы автоматический контроль за температурой всего в самокате, с автоматическим отключением электросамоката - чтобы не перегреть.

Ставить на руль по несколько штук стрёмных китайский дисплейчиков для просмотра температуры - так себе затея, думаю делают это не от бедности, а от безвыходности.

Я планирую собрать на базе рамы от Kugoo G-Booster другой самокат, полностью из заводских комплектующих, мощностью почти 4 киловатта. Общий вес будет не более 32 килограмм, это вместе с дополнительным оборудованием - детский руль, три фары, вынос руля, и т.д., и пробегом на одной зарядке около 80-90 километров. Сейчас у меня батарея меньше на 20%, пока был новый проезжал пару раз 80 км., через 3,5 года проезжает максимум 70. Новый по идее и сотку сможет проехать в спокойном режиме. В такой комплектации греться ничего не будет, датчики температуры будут без острой надобности.

Но после сборки, немного покатавшись, я хочу заменить контроллеры (нашёл в Китае недорого) и получить мощность 5,5 киловатт. Почему бы не попробовать? Будет почти полный аналог самоката Dualtron Thunder первой ревизии, только легче в 1,5 раза. По размерам деки, шинам, клиренсу - тоже почти  полный аналог Тандера. У Dualtron Thunder номинальная мощность 2.400 Вт, пиковая 5.400 Вт, у моего номинальная мощность будет 3.600 Вт, почему бы не сделать пиковую 5.400  Вт? Но тут уже будет острая необходимость следить за температурой моторов и контроллеров, чтобы ничего не спалить. Будет сильно греться - поставлю назад контроллеры слабее, мощные продам. Или мощные оставлю, слабые подам. Но без четырёх датчиков температуры устанавливать мощные контроллеры не рискну.

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

13_chip_13

Цитата: Алекс Сочи от 28 Авг. 2022 в 17:19Я считаю, что многие хотели бы автоматический контроль за температурой всего в самокате, с автоматическим отключением электросамоката - чтобы не перегреть.
Иметь хотелибы, но этож надо руки приложить,  а таких мало. Автоконтроль, ну у меня до 10 датчиков в следующей версии платы (там и софт другой) и будет авто контроль, но я уверен что использует это процентов 10 если не меньше. В текущей то версии один датчик сделал, так никто не пользуется 😁

Алекс Сочи

Нашёл познавательный материал - оказывается, датчики температуры Dallas китайцы подделывают, наверное из-за этого у людей были типа помехи и данные считывались через раз, или вообще терялись.

Как отличить подделку DS18B20 от оригинала: https://www.drive2.ru/b/513061538530066675/

Алекс Сочи

Предлагаю ещё одну идею, вдруг кому пригодится.

Если делать плавный старт на более мощном процессоре, можно вывести разъём для подключения к BMS аккумуляторной батареи.

От BMS ожно получить много параметров - серийный номер, ёмкость батареи в ватт-часах, напряжение ячеек в каждой параллели, текущие ошибки, и т.д. Будет удобно контролировать состояние батареи и своевременно балансировать ячейки в случае разбега напряжений, можно будет отследить момент начала деградации батареи и вовремя её заменить (чтобы избежать пожара).

Протокол BMS

Формат пакета:

    2 байта - преамбула, всегда 0x55AA
    1 байт - длина данных (за минусом преамбулы, адреса, контрольной суммы)
    1 байт - адрес
    XX данные. 1 или 2 байта. Сначала идет младший байт.
    2 байта - контрольная сумма: 0xFFFF минус сумма всех байтов после преамбулы. Сначала идет младший байт.


Пример.

BMS-RX (от контроллера):

    0x55 0xAA - преамбула
    0x03 - длина этого запроса
    0x22 - device id
    0x01 - constanta
    0x30 0x0C - команда + ожидаемая длина ответа
    0x9D 0xFF - контрольная сумма

BMS-TX (ответ):

    0x55 0xAA - преамбула
    0x0E - длина ответа
    0x25 - device id
    0x01 - constanta (разделитель)
    0x30 - номер команды из запроса
    0x01 0x00 0x79 0x1E 0x64 0x00 0x01 0x00 0x11 0x10 0x2A 0x2B - ответ
    0x28 0xFE - контрольная сумма


Команды BMS.

0x300C - статус батареи (самая частая)

Запрос  (для примера):

    55AA - преамбула
    03 - длина
    22 - адрес BMS
    01 - константа
    30 - команда
    0C - ожидаемая длина полезных данных в ответе (12 байт, без адреса и константы)
    9DFF = LSB : 0xFFFF - (03+22+01+30+0C) - контрольная сумма

Ответ:

    55AA - преамбула
    0E - длина сообщения (14 байт) без CRC
    25 - адрес контроллера
    01 - константа 
    30 - команда из запроса
    01 = Режим (0x01 - Базовый; 0x41 - Подтвержденная зарядка)
    00 = Статус (0x00 - Normal; 0x02 - Отвалилась ячейка)
    1E7A = 7802 - остаток ёмкости mAh. Обратный порядок.
    0064 = 100% уровень заряда. Обратный порядок.
    0001 = ток со знаком *100. Начинается с младшего. Если старший начинается с F, то это отрицательное число HEX. Результат в десятичных делить на 100 (0x93 0xFF =  -1,09А; 0xA7 0x03  = 9,35А; 0x01 0x00 = 0,01А)
    1011 = Напряжение * 100. Начинается с младшего. Результат в десятичных делить на 100 (0x11 0x10 = 41,113V)
    29 = 41  температура-1. Результат в десятичных уменьшать на 20°C.
    2A = 42  температура-2. Результат в десятичных уменьшать на 20°C.
    FE29 = CRC = 0xFFFF- 0E-25-01-30-01-00-7A-1E-64-00-01-00-11-10-29-2A


0x310A - статус батареи для приложения (как 0x30, но без режима и статуса)

Ответ:

    55AA - преамбула
    0C - длина сообщения, без CRC
    25 - адрес
    01 - константа! 
    31 - команда из запроса
    1E79 = остаток ёмкости mAh
    0064 =  уровень заряда %
    0000 = ток
    1011 = Напряжение
    2A = температура-1
    2B = температура-2
    FE2B = CRC


Далее, думаю, понятно без преамбул, адресов, констант (разделителя), CRC. Привожу только данные на запросы:

0x1010 - идентификатор батареи (при включении)

    14 байт - Serial Number (33.4A.41.47.4A.31.37.42.45.44.30.36.33.39 = 3JAGJ17BED0639 )
    2 байта - версия BMS (0x1501 = [0115] = 1.1.5)


0x1012 - серийный номер для приложения

    33.4A.41.47.4A.31.37.42.45.44.30.36.33.39 = 3JAGJ17BED0639
    0x15 0x01 (1.1.5 - версия прошивки)
    0x78 0x1E = [1E78] = 7800 - ёмкость заводская


0x1B04 - Кол-во циклов заряда для приложения

    5F00 = [005F] = 95  cycle period
    8300 = [0083] = 131 charging times


0x2006 - дата производства батареи??? номер партии?  для приложения

    4E22 - ????
    00.00.00.00 = const


0x3B02 - Ping???  для приложения

    0x6200 - ответ всегда одинаковый (при любом заряде, при любой батарее)


0x401E - напряжение на ячейках (для приложения)

    Cell #1 - напряжение на ячейке * 1000.
            -- --
    Cell #10
    Cell #11 - резерв
            -- --
    Cell #15 - резерв

Infusion

Цитата: Алекс Сочи от 08 Сен. 2022 в 16:07
Предлагаю ещё одну идею

Приветствую!
Что-то удалось реализовать? Любопытно стало.
Тоже, пока ардуинка шла с алика, понаписал тучу всего для PAS ассистента(на 28 Кб кода).
А в итоге, сделал версию LITE, оставил только плавную гашетку, PAS ассистент и круиз контроль (4 Кб кода)

Throttle

Доброго времени всем! А можно здесь к кому-то обратиться за переделкой курка на более плавный? Сам не возьмусь, ибо вообще в этом ничего не смыслю. Поэтому был благодарен умельцу, который смог бы помочь за согласованную плату. Речь про дуалтрон тандер 3.