PCCar.ru - Ваш автомобильный компьютер

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   Общение с машиной (http://pccar.ru/forumdisplay.php?f=14)
-   -   Arduino+CANBUS Shield (http://pccar.ru/showthread.php?t=23221)

devova 06.04.2016 12:47

Єсли не сложно, можете обяснить назначения пина INT, зачем он? ето ж не SPI. я присоєдинил єво к пину 3, не некоториє пишут што нада к пину 2? может проблема в етом. К трансресиверу пока што ничиво не подключено, как я понимаю для инита и не надо?

xmetal 06.04.2016 13:22

Когда получено сообшение из кан шины INT устанавливается в 0, оповещая, что сообщение можно считывать. На инициализацию не влияет.

Soldat6600 20.07.2016 15:46

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

lti1 20.07.2016 20:26

Цитата:

Сообщение от Soldat6600 (Сообщение 365156)
Подскажите пожалуйста, суть в чем, не могу считать данные с кан шины, авто ауди Q5. Вообще реально считать с ауди?
Хочу со штатной магнитолой поиграться.

В какой точке подключаетесь к CAN шине?

Soldat6600 21.07.2016 12:00

В Ауди это кан инфотеймент, приходит к мафону, там и подключаюсь.

Soldat6600 21.07.2016 12:10

Шилд MCP2515 модуль шины CAN Tja1050 и уно, пробовал менять кварц на 16 толку нет. Вообще нет ни каких данных.

T_r_D 21.07.2016 13:52

Вложений: 1
какая скорость кан там?
какой тип кан там?

Менять кварц на 16 толку и не будет.

Вот эту библиотеку пробуй, она поддерживает и 8 и 16МгЦ платы.
Там в примере есть чтение.
Выстави там скорость и частоту и для начала узнай выдаётся ли сообщение ОК в терминал. Тоесть проинициализировался ли MCP2515.

Потом уже подбирать скорость.
Если не сработает, то пытаться поменять 1050 на 1054 или 1055

armlive 22.07.2016 11:21

Вчера тоже просканировал и анализировал свою шину. Нашел кузов, двигатель, ручник, но пока в мусоре. Поморгал светом. Потом нашел это, там тоже далеко не ушел.

lti1 22.07.2016 12:52

Цитата:

Сообщение от armlive (Сообщение 365326)
Вчера тоже просканировал и анализировал свою шину. Нашел кузов, двигатель, ручник, но пока в мусоре. Поморгал светом. Потом нашел это, там тоже далеко не ушел.

Если ардуиной ищете, эта программа может облегчить труд.

armlive 22.07.2016 13:08

Цитата:

Сообщение от lti1 (Сообщение 365334)
Если ардуиной ищете, эта программа может облегчить труд.

CAN-BUS-TOOL эта, а то ссылка не рабочая уже?
Я тут тоже находил но так и не заработало ничего can-232.cpp выкидывает ошибку о не декларированной переменной

lti1 22.07.2016 13:17

Цитата:

Сообщение от armlive (Сообщение 365339)
CAN-BUS-TOOL эта, а то ссылка не рабочая уже?
Я тут тоже находил но так и не заработало ничего can-232.cpp выкидывает ошибку о не декларированной переменной

Я же в сообщение файл с архивом прикрепил, у меня работало на ура.

armlive 22.07.2016 13:24

Цитата:

Сообщение от lti1 (Сообщение 365340)
Я же в сообщение файл с архивом прикрепил, у меня работало на ура.

Спасибо попробую, я думал может что там еще было

Soldat6600 22.07.2016 17:56

MCP2515 роинициализировался и пишет в терминале ОК. Скорость передачи данных 500 Кб. Разобрал мафон, там стоит tle6254-3g трансивер. А какой скетч использовать для чтения пакета данных?

Soldat6600 22.07.2016 22:20

В мониторе порта пишет CAN BUS Shield init OK, почемуто нет никаких данных. А есть схемка на 1054?

lti1 22.07.2016 22:23

Soldat6600, Вы уверены, что 500 кбит/сек - правильная скорость?

Soldat6600 22.07.2016 22:32

уверен, сейчас пробовал подцепиться к другой кан шине так называемой Кан Комфорт там 100% 500 кбит. то же самое тишина. Может шилд не рабочий?

T_r_D 23.07.2016 02:26

Он не уверен, а я уверен что:The TLE6254-3G is a fault tolerant low speed CAN Transceiver works as the interface between the CAN protocol controller and the physical CAN bus-lines. It is optimized for low-speed data transmission (up to 125kBaud

Тоесть это ft-can.
И 1050 его читать не будет.
И что скорость не 500,а 125

И уверен в том что люди не хотят сами задать вопрос гуглю.

Soldat6600 23.07.2016 19:47

Дело не в этом хотят не хотят, в SSP CAN Ауди Q5 написано что скорость шин кан комфорт и инфотеймент 500 кб/с, но похоже только на рестайлинговых моделях, у меня до рестайл. Но все же получилось получить данные по обеим шинам, скорость 100 кбит. Но скетч который скинул lti1 так и не заработал как только не пытался.
Помогите пж. с отправкой этих данных в саму магнитоллу, хочу её домой забрать и дома разбираться. Откопал коды с мульти руля. За любую помощь буду весьма благодарен. Вот скетчь которым считывал.
Цитата:

#include
#include

long unsigned int rxId;
unsigned char len = 0;
unsigned char rxBuf[8];

MCP_CAN CAN0(10);

void setup()
{
Serial.begin(9600);
if(CAN0.begin(CAN_500KBPS) == CAN_OK)
{
Serial.println("can init ok!!");
}
else
{
Serial.println("Can init fail!!");
}

}

void loop()
{
CAN0.readMsgBuf(&len, rxBuf);
rxId = CAN0.getCanId();

Serial.print("ID: ");
Serial.print(rxId, HEX);
Serial.print(" Data: ");
for(int i = 0; i {
if(rxBuf[i] < 0x10) // If data byte is less than 0x10, add a leading zero
{
Serial.print("0");
}
Serial.print(rxBuf[i], HEX);
Serial.print(" ");
}
Serial.println();
}

armlive 23.07.2016 23:00

Цитата:

Сообщение от lti1 (Сообщение 365340)
Я же в сообщение файл с архивом прикрепил, у меня работало на ура.

Что то эта программа у меня не работает, вернее работает даже без ардуино))) какие-то данные меняет там сама, откуда она их берет, но точно несть от ардуино.
Центральным зомком что то не получается управлять, дворниками пожалуйста

T_r_D 24.07.2016 06:23

Солдат - в программе есть пример скетча.
Тебе оттуда нужно формат сообщения взять.

Что завелись это хорошо, но у тебя ФТ кан, а читаешь ты микрухой для обычного кана, так что есть варианты того что ловятся не все сообщения

GASCHE 24.07.2016 07:31

Цитата:

Сообщение от T_r_D (Сообщение 365487)
но у тебя ФТ кан

А можно поподробнее, "ФТ кан" это что?

Soldat6600 24.07.2016 11:43

Пакет данных я получаю вот в таком формате:
Цитата:

ID: 42B Data: 13 01 01 21 00 00 0F 03
ID: 1A2 Data: A0 0F 8A FF 4A FF
ID: 663 Data: 60 14 00 07 00 8F 00 00
ID: 439 Data: 0B 01 1E 09 00 00 00 06
ID: 42B Data: 13 01 01 21 00 00 0F 03
ID: 433 Data: 19 01 01 01 02 00 40 00
ID: 439 Data: 0B 01 1E 09 00 00 00 06
ID: 663 Data: 60 14 00 07 00 8F 00 00
ID: 3C0 Data: E3 07 27 00
ID: 433 Data: 19 01 01 01 02 00 40 00
ID: 439 Data: 0B 01 1E 09 00 00 00 06
ID: 1A2 Data: A0 0F 8A FF 4A FF
ID: 663 Data: 60 14 00 07 00 8F 00 00
ID: 439 Data: 0B 01 1E 09 00 00 00 06
ID: 1A2 Data: A0 0F 8A FF 4A FF
ID: 67B Data: F8 FF 00 00 08 08 11 05
ID: 1A2 Data: A0 0F 8A FF 4A FF
ID: 663 Data: 60 14 00 07 00 8F 00 00
ID: 491 Data: A1 0F 8A FF 4A FF
ID: 433 Data: 19 01 01 01 02 00 40 00
ID: 663 Data: 60 14 00 07 00 8F 00 00
ID: 66D Data: E0 FF 00 00 00 00 00 02
ID: 5F0 Data: 90 00 64 09 00
ID: 433 Data: 19 01 01 01 02 00 40 00
Как его отправить? чтото у меня совсем не получается его отправить. Пробовал и с монитора порта отправить, и в коде вбивать,есть какой нибудь пример отправки чтобы хотябы было понимание? В ардуине я новичек.

T_r_D 24.07.2016 11:46

Протокол такой не совсем совместимый с фаст кан.
Яж тебе в предидущем сообщении дал цитату из мануала в котором ясно указано что шина:
The TLE6254-3G is a fault tolerant (тоесть ФТ или FT).
Поэтому и написал что скорость 125, но не написал что 125 для этого типа максимум, но ты и сам нашёл правильную.
А tja1050 это обычная быстрая шина.

У меня на столе связка магнитола+дисплей+1050 заводилась очень криво. Тоесть из реальных 30 ID в шине было видно 5.

Твой выход перепаять 1050 на 1054 или 1055. Ну или на свой страх и риск.
Для этого идеально подходит платка переходника SOP14>DIP14 ну или 16- просто лишние выводы останутся на плате.
На платку трансивер, платка трансивером вниз на штыри MCP2515 которые параллельно разъёму кан на винтиках.

Отправка
unsigned char stmp[8] = {0, 1, 2, 3, 4, 5, 6, 7}; ЭТО ДАТА
CAN0.sendMsgBuf(0x00, 0, 8, stmp); это отправка в адрес 00. и длина пакета 8 байт
тоесть твои ID надо перевести в хекс
Вместо CAN0. надо подставить то название, с котором у тебя проинициализирован MCP

Soldat6600 24.07.2016 11:51

Нашел как кодируется время)) Практическим путем мне удалось определить только лишь данные которые передаются часами, т.е. показания времени.
т.е. прочитав блок ID: 62F Data: 44 51 09 1C 08 Я отследил, что значения в тот момент равные 09 1С были равны текущему показанию времени 09:28.

Soldat6600 24.07.2016 11:59

Есть у меня 1054 штук 10) Анет готовой схемки подключения? В даташите были некие не понятные нюансы подключения к MCP2515. Скинь пожалуйста если есть.

Soldat6600 24.07.2016 12:44

Нашел схемкуhttp://www.mikrocontroller.net/topic/136356

T_r_D 24.07.2016 20:12

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

olegik_ah 24.07.2016 23:27

Цитата:

Сообщение от T_r_D (Сообщение 343341)
Протоколы разные!
А поэтому трансиверы разные!
Кан комфорт не будет работать с 2551, а будет только с тжа 1054, а он сам стоит 500р за корпус. поэтому и дорого.

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

Для тех кто сомневается что по кан комфорт идут данные о оборотах и так далее- смотрите в тему про ситроен и кан.

У****! Я знал, что это рано или поздно произойдет и кто-то мои слова подвердит:)
Предыстория такая, что я одному челу в этой теме советовал что трансивер с дешевого шилда с алиэкспресса прекрасно работал как с FT Can (fault tolerance - тот, что при обрыве одного из проводов может работать), так и с быстрым CAN. И при этом я попробовал еще несколько трансиверов на этом шилде перепаивать - и тоже все работало. В ответ получил сообщение - цитату:) Не стал спорить и переубеждать. А вот и нашелся пруф:)
У меня тоже ауди, но a5 - но это пофиг и a5 и q5 почти одинаковы.
В общем никаких пропусков пакетов не было как на инфотеймент шине (ft), так и на комфорт, так и на моторной.
Только скорость у ауди на инфотеймент не 125, а 100!!!
Поделку давно собрал и нареканий на нее нет.

olegik_ah 24.07.2016 23:38

Цитата:

Сообщение от Soldat6600 (Сообщение 365507)
Пакет данных я получаю вот в таком формате:
Как его отправить? чтото у меня совсем не получается его отправить. Пробовал и с монитора порта отправить, и в коде вбивать,есть какой нибудь пример отправки чтобы хотябы было понимание? В ардуине я новичек.

В общем с отправкой наверняка разберешься. Только учти, скорость не 125, а 100!!! Возможно проблема в этом.
Но есть еще одна хитрость у VAG груп. Дело в том, что почти (обращаю внимание на "почти") все, что летает в CAN у VAG завернуто еще в некий VW Transport Protocol 2.0 (у наших с тобой тачек), а у более старых тачек в VW Transport Protocol 1.6.
Поэтому если тупо что-то в кан отправить - то реакции от машины не будет.
Этот транспорт протокол нужен по одной простой причине. Can в классике не подразумевает надежную доставку данных до адресата, т.к. шлются широковещательные пакеты. Типа кто-то отправил, кто-то другой (а может быть и несколько) блоков услышали. При этом один из блоков мог быть чем-то занят и пропустить пакет... Что-то может заглючить. А вот с оберткой в этот транспорт протокол все пакеты нумеруются и отправляются подтверждения о получении и готовность блоков к приемке данных. В общем много слов - самое подробное описание, найденное мною вот здесь:
https://jazdw.net/tp20
Удачи в ковырянии Ауди:) Не многие владельцы Ауди на это решаются:)
PS: здесь появляюсь редко. Ели есть конкретные вопросы по Ауди - то в личку.

armlive 25.07.2016 12:34

В общем разобрался я с вот этой темой все снифет этой прогой CANHacker v.2.00.01,работает на 1.6.7, только все остальные библиотеки по CAN нужно удалить.
И вопрос, у меня перестала работать кнопка центрального замка в салоне, с ключа работает, мог я что-то перепрограммировать ? Что то я сомневаюсь.

lti1 25.07.2016 13:13

Цитата:

Сообщение от armlive (Сообщение 365579)
В общем разобрался я с вот этой темой все снифет этой прогой CANHacker v.2.00.01,работает на 1.6.7, только все остальные библиотеки по CAN нужно удалить.

Крайне нестабильно работает с ардуиной эта подпрограмма, не хватает скорости, возможны пропуски пакетов, по сравнения с can hacker.
Цитата:

Сообщение от armlive (Сообщение 365579)
И вопрос, у меня перестала работать кнопка центрального замка в салоне, с ключа работает, мог я что-то перепрограммировать ? Что то я сомневаюсь.

У меня периодически похожее бывает на FF3, потом само проходит. В крайнем случае сбросьте клемму АКБ.

armlive 25.07.2016 13:19

Цитата:

Сообщение от lti1 (Сообщение 365583)
Крайне нестабильно работает с ардуиной эта подпрограмма, не хватает скорости, возможны пропуски пакетов, по сравнения с can hacker.

Тут согласен, скорости не хватает, но ту запустить не получилось.
Цитата:

Сообщение от lti1 (Сообщение 365583)
У меня периодически похожее бывает на FF3, потом само проходит. В крайнем случае сбросьте клемму АКБ.

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

T_r_D 26.07.2016 19:40

armlive а ты уверен что ЦЗ сам на этой шине, а то что меняется это не информационное сообщение?

armlive 26.07.2016 22:46

Цитата:

Сообщение от T_r_D (Сообщение 365697)
armlive а ты уверен что ЦЗ сам на этой шине, а то что меняется это не информационное сообщение?

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

lti1 26.07.2016 23:15

Цитата:

Сообщение от armlive (Сообщение 365714)
По схеме да, она по схеме одна, да и в инструкции к сигнализации указывают эту колодку , а здесь на девятой странице код 2315 старше 07 года без кейлес точки стоят, а у кода 2311 нет, что за коды эти.

Это код по которому сигнализация понимает с какой машиной обменивается данными.
Мне к стати удалось управлять замками дверей на FF3 через CAN, но как то немного криво, при блокировке срабатывает два раза подряд, а с разблокировкой всё ок.

armlive 26.07.2016 23:18

Цитата:

Сообщение от lti1 (Сообщение 365721)
Это код по которому сигнализация понимает с какой машиной обменивается данными.
Мне к стати удалось управлять замками дверей на FF3 через CAN, но как то немного криво, при блокировке срабатывает два раза подряд, а с разблокировкой всё ок.

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

armlive 27.07.2016 14:36

Вложений: 1
Много информации для NISSAN по ID, PID собранные забугорными кулибинами. Подходит к большинству моделей

armlive 28.07.2016 19:03

В общем у меня спортивный интерес появился купил я сигнализацию с Кан шиной буду пытать.
Что то вообще тишина.... Модуль сконфигурировал на компе, а в мониторе тишина хммм
Надо идти в машину подключать смотреть

armlive 28.07.2016 22:06

Вложений: 1
Ну есть тут кто может мне объяснить?
В машине при подключении к CAN все работает, по мимо тех, что были в мониторе
PHP код:

ID       DLC Data                    Period Count  Comment
215      6   FF 30 FF 00 FF FF       24     2833   
216      1   40                      20     2878   
280      8   01 32 AA 00 00 00 3F 40 20     2879   
2DE      8   00 00 00 04 B0 00 0A 32 10     5747   
355      7   00 00 00 00 00 FF 1C    40     1438   
358      8   01 02 80 00 00 03 00 00 100    583    
35D      8   00 03 00 00 00 00 00 00 100    582    
5C5      8   80 00 E7 68 00 0C 00 00 100    576    
60D      8   00 02 18 00 00 00 00 00 101    551    
625      6   02 00 C4 0E 00 9B       101    576    
682      1   00                      0      1 

Появляются две новых строчки
PHP код:

745      8   02 10 81 FF FF FF FF FF 451    7      
765      8   02 50 81 FF FF FF FF FF 438    7 

Но они опять ни чем не управляют.
Вот лог постановки и снятия.
самое интересное, что ардуино не видит тех команд, что посылает блок сигнализации, почему????
CAN_10KBPS, CAN_20KBPS, CAN_50KBPS, CAN_100KBPS, CAN_125KBPS, CAN_250KBPS, CAN_500KBPS, CAN_500KBPS,
CAN_1000KBPS, CAN_83K3BPS
Все проверил. Ну бред какой то, не может же он зашифрованный быть.

armlive 29.07.2016 00:11

Наконец получилось считать с сигналки, оказалось у модуля MCP2515 нет сопротивления 120ом, как пишут китайцы блин, поставил сопротивление и принимаю и отправляю удачно.
Завтра буду пробовать в машину слать.


Часовой пояс GMT +4, время: 09:31.

Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot