1

Тема: Canny5.3 Pico индикация нажатия кнопок.

Приветствую All. Стоит задача, вывести на индикацию нажатия кнопок с шины LIN.
Есть объект. Есть блоки. Меня интересуют только два из них. Предполагаю что на каждый идет своя отдельная LIN шина. Нужно зажечь один светодиод при одновременном нажатии нескольких кнопок на двух разных блоках. Хотя не уверен, объект еще не видел. Может LIN и один. Посмотрим, я думал что кан\лин монитор это покажет быстро.

Уже заказаны три канни. 7,2 дуо, 7, и 5,3 пико.
7,2 дуо думаю пустить на кан монитор.
Канни7 пока полежит резервом.

Сам проект думаю реализовать на Canny5.3 Pico. В свое время плотно занимался жесткой логикой. В этом смысле ваш подход к делу мне понятен, аналогий множество. Именно поэтому я и заинтересовался Канни.

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

2

Re: Canny5.3 Pico индикация нажатия кнопок.

Поскольку предполагается подключаться к уже существующей сети LIN с целью считывания имеющегося обмена данными, то скорее всего понадобится работа контроллера на прием в режим SLAVE. Пример диаграммы для контроллера CANNY 5.3 pico можно найти в соответствующем разделе wiki.
Подробнее о работе контроллеров в качестве CAN(LIN) monitor можно также прочитать в нашем онлайн справочнике.

3

Re: Canny5.3 Pico индикация нажатия кнопок.

Ок, спасибо. Материала для работы более чем достаточно.

4 (12-06-2020 22:12:10 отредактировано Trasserlong)

Re: Canny5.3 Pico индикация нажатия кнопок.

Приветствую. Пришли мои заказанные блоки канни. Реализовывать проект буду на 5,3 пико.

Первый блин...
Предполагаю что на первой LIN  в ID0034 при нажатии первой кнопки в D1 устанавливается 13.
Предполагаю что на второй LIN  в ID0043 при нажатии второй кнопки в D1 устанавливается 31.
При одновременном нажатии обоих кнопок.  Значения которых 13 И 31. Должен зажечься красный светодиод.

Пока толком и сам не понял что написал. Новый язык, все новое...  Делал по аналогии с примерами приведенными на форуме.

А вот уже и вопросы. Созвонился с клиентом. Кнопок будет уже три... А это значит что мне для этой диаграммы понадобиться трех входовый элемент И. Что бы красный светодиод загорелся при одновременном нажатии все трех кнопок. В жесткой логике много входовые элементы И привычное дело. У вас нашел почему то только двух входовые. Подскажите где у вас много входовые элементы И. Или как перенастроить двух входовый в трех входовый.

Вложений в сообщении

Иконка вложения LIN1_LIN2_v00.cfd 2.32 кб, скачивался 216 раз, последний раз 2020-06-12 

5

Re: Canny5.3 Pico индикация нажатия кнопок.

При одновременном нажатии обоих кнопок.

Инверсия на выходах блоков №4 и №11 похоже меняет смысл с "нажаты обе кнопки" на "не нажата ни одна из кнопок"

6 (12-06-2020 22:18:11 отредактировано Trasserlong)

Re: Canny5.3 Pico индикация нажатия кнопок.

Константин, CANNY пишет:

Инверсия на выходах блоков №4 и №11 похоже меняет смысл с "нажаты обе кнопки" на "не нажата ни одна из кнопок"

При нажатии кнопок на выходах 4 и 11 должны появиться единицы. Если обе единицы на входе блока 5, то тогда загорается красный...

Увы, вы правы. Сейчас переделаю.

Вложений в сообщении

Иконка вложения LIN1_LIN2_v01.cfd 2.32 кб, скачивался 214 раз, последний раз 2020-06-12 

7 (12-06-2020 22:25:42 отредактировано Trasserlong)

Re: Canny5.3 Pico индикация нажатия кнопок.

Trasserlong пишет:

Подскажите где у вас много входовые элементы И. Или как перенастроить двух входовый блок 5 в трех входовый.

Немного непривычно. Не хватает много входовых элементов И. Как решать подобную задачу?

Вложений в сообщении

Иконка вложения LIN1_LIN2_v02.cfd 3.19 кб, скачивался 196 раз, последний раз 2020-06-12 

8

Re: Canny5.3 Pico индикация нажатия кнопок.

Посмотрите здесь: https://wiki.canny.ru/index.php?title=% … and_Tricks

9

Re: Canny5.3 Pico индикация нажатия кнопок.

Ок, все ясно понятно. Слона то я и не заметил. Щас.

10 (12-06-2020 22:58:04 отредактировано Trasserlong)

Re: Canny5.3 Pico индикация нажатия кнопок.

Константин, CANNY пишет:

Посмотрите

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

Навигация по диаграмме. Только влево вправо? А вверх вниз? Что то не получается, неудобно без нее.

Вложений в сообщении

Иконка вложения LIN1_LIN2_v03.cfd 3.94 кб, скачивался 200 раз, последний раз 2020-06-12 

11

Re: Canny5.3 Pico индикация нажатия кнопок.

Но не подсказывает какой...

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

Навигация по диаграмме

Во первых увеличьте рабочую область диаграммы.
Пользуйтесь колесом мыши при удержании на клавиатуре CTRL
Интерфейс пользователя CannyLab, как и многое другое, подробно описан в документации: https://wiki.canny.ru/index.php?title=% … F_CannyLab

12 (13-06-2020 09:16:30 отредактировано Trasserlong)

Re: Canny5.3 Pico индикация нажатия кнопок.

Приветствую.
Второй блин...

Предполагаю что на первой LIN  в ID0034 при нажатии первой кнопки в D1 устанавливается 13.

Предполагаю что на второй LIN  в ID0043 при нажатии второй кнопки в D1 устанавливается 31.
Предполагаю что на второй LIN  в ID0043 при нажатии третьей кнопки в D1 устанавливается 18.

При одновременном нажатии трех кнопок.  Значения которых 13, 31, 18. Должен зажечься красный светодиод.

Вложений в сообщении

Иконка вложения LIN1_LIN2_v05.cfd 2.82 кб, скачивался 189 раз, последний раз 2020-06-13 

13

Re: Canny5.3 Pico индикация нажатия кнопок.

В отсутствии знака вопроса не совсем понятно, ожидаете ли вы ответа, но тем не менее:

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

Второе - я правильно понимаю, что вы ожидаете при каких то обстоятельствах получить единицы одновременно и на выходе блока №11 и блока №13? При каких?

Третье - для дальнейшей самостоятельной отладки ваших алгоритмов используйте пожалуйста документацию и симулятор: https://wiki.canny.ru/index.php?title=% … 0_CannyLab


Желаю вам успехов в ваших проектах!

14 (15-06-2020 19:34:23 отредактировано Trasserlong)

Re: Canny5.3 Pico индикация нажатия кнопок.

Приветствую.
А вот и третий...
Предполагаю что на первой LIN  в ID0034 при нажатии первой кнопки в D1 устанавливается   13.

Предполагаю что на второй LIN  в ID0043 при нажатии второй кнопки в D1 устанавливается   31.
Предполагаю что на второй LIN  в ID0043 при нажатии третьей кнопки в D1 устанавливается   18.
То есть, при одновременном нажатии трех кнопок.  Значения которых 13, 31, 18. Должен зажечься красный светодиод. Но до светодиода дело не доходит…

Застрял на блоках 5, 10. Почему то не выдвигает значения с входов указанных блоков на их выхода результат.

ПС. Подскажите хотя бы. Я на правильном пути? Тонкости и нюансы работа с Канни будут освоены, всему свое время. Но время уже пожимает.

Вложений в сообщении

Иконка вложения LIN1_LIN2_v06.cfd 2.7 кб, скачивался 213 раз, последний раз 2020-06-14 

Иконка вложения сдвиг вправо.JPG 299.48 кб, скачивался 67 раз, последний раз 2020-06-14 

15

Re: Canny5.3 Pico индикация нажатия кнопок.

Продолжаю барахтаться в новых знаниях... Блоки сдвига пока камень преткновения...

Вложений в сообщении

Иконка вложения LIN1_LIN2_v07.cfd 2.9 кб, скачивался 195 раз, последний раз 2020-06-15 

16 (15-06-2020 20:09:43 отредактировано AlexN)

Re: Canny5.3 Pico индикация нажатия кнопок.

Продолжаю барахтаться в новых знаниях...

И заметен прогресс - вы уже не пытаетесь сравнивать один и тот же регистр на равенство двум разным числами одновременно. так держать!

Блоки сдвига пока камень преткновения...

А в чем вопрос?
У вас очень загадочная манера общения. Не пойму, вы жалуетесь или хвастаетесь?
Тут про сдвиг: https://www.google.ru/search?q=битовый+сдвиг и симулятор вам в помощь - посдвигайте разные числа посмотрите что получается.

17

Re: Canny5.3 Pico индикация нажатия кнопок.

Trasserlong пишет:

ПС. Подскажите хотя бы. Я на правильном пути? Тонкости и нюансы работа с Канни будут освоены, всему свое время. Но время уже пожимает.

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

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

18

Re: Canny5.3 Pico индикация нажатия кнопок.

Приветствую. Даже и не знаю что я сотворил. Но пришлось применить Бритву Оккама, и отсечь лишнее.
Светодиод я зажег. Но вот будет ли это работать в реальном железе...

Еще не был на объекте. Еще не знаю сколько лин шин будет, предполагаю что две, а может и одна. Точно знаю только то, что кнопок будет нажато три одновременно.

Предполагаю что на первой LIN  в ID0034 при нажатии первой кнопки в D1 устанавливается   13. Цифры условные, реальные значения еще предстоит вычитать.

Предполагаю что на второй LIN  в ID0043 при нажатии второй кнопки в D1 устанавливается   31. Цифры условные, реальные значения еще предстоит вычитать.

Предполагаю что на второй LIN  в ID0043 при нажатии третьей кнопки в D1 устанавливается   18. Цифры условные, реальные значения еще предстоит вычитать.

То есть, при одновременном нажатии трех кнопок.  Значения которых 13, 31, 18. Должен зажечься красный светодиод. При отпускании любой кнопки, соответственно светодиод должен погаснуть.

Собственно сам светодиод мне не нужен. Сейчас еще буду разбираться какой канал включить, и как его настроить. Мне нужно что бы на выходе канала висел обрыв (воздух). И при совпадении входных условий (нажато три кнопки одновременно). Появлялась масса.

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

Вложений в сообщении

Иконка вложения Ockham_v01.cfd 2.58 кб, скачивался 186 раз, последний раз 2020-06-16 

19

Re: Canny5.3 Pico индикация нажатия кнопок.

...Предполагаю что на второй LIN  в ID0043 при нажатии второй кнопки в D1 устанавливается   31. Цифры условные, реальные значения еще предстоит вычитать.

Предполагаю что на второй LIN  в ID0043 при нажатии третьей кнопки в D1 устанавливается   18. Цифры условные, реальные значения еще предстоит вычитать.
...
(нажато три кнопки одновременно).

Ну вот, опять.

Даже и не знаю что я сотворил.

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

Если как то и будет, то уж точно не так как вы описали.

Вот здесь: https://wiki.canny.ru/index.php?title=% … 0%B0%D0%BC описано как работает каждый из типов функциональных блоков. С примерами. Попробуйте там найти те блоки, что вы применили и выяснить как они работают. Это существенно приблизит вас к пониманию того, как будет работать ваша диаграмма.

20 (16-06-2020 20:03:28 отредактировано Trasserlong)

Re: Canny5.3 Pico индикация нажатия кнопок.

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

Первая LIN  в ID0034 при нажатии первой кнопки в LIN1 D1:D0 устанавливается   13.

Вторая LIN  в ID0043 при нажатии второй кнопки в LIN2 D1:D0 устанавливается   31.
Вторая LIN  в ID0043 при нажатии третьей кнопки в LIN2 D3:D2 устанавливается   18.

То есть, при одновременном нажатии трех кнопок.  Значения которых 13, 31, 18. Должен зажечься зеленый светодиод и сработать реле. При отпускании любой кнопки, соответственно светодиод должен погаснуть и реле отпустить.

Вложений в сообщении

Иконка вложения Ockham_v05.cfd 4.05 кб, скачивался 198 раз, последний раз 2020-06-16 

21 (17-06-2020 14:54:07 отредактировано Trasserlong)

Re: Canny5.3 Pico индикация нажатия кнопок.

Константин, CANNY пишет:

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

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

Я с уважением отношусь к чужому труду и знаниям. С тем, что бы по максимуму получить помощь, и не перегружать тех поддержку. Прошу указать на ошибки. То есть, не исправлять их. Это сложно и долго. А именно указать где. Заниматься изучением теории, и исправлением я буду сам.
Возможный вариант помощи. Если есть ошибки (регистр не тот, связи нет, блок не тот и тд). То в это месте поставить знак вопроса.

Простая ошибка. Знак вопроса ?
Грубая ошибка. Два знака   ??
Очень грубая. Три знака  ???
Ну, и если знаков не хватает.
Можно написать что то или от души, или по делу.

Вложений в сообщении

Иконка вложения Ockham_v06.cfd 4.4 кб, скачивался 199 раз, последний раз 2020-06-17 

22

Re: Canny5.3 Pico индикация нажатия кнопок.

Технических ошибок в диаграмме нет, она будет работать, но нужно учитывать следующие особенности.
1. В ID=0x34 байт D1 должен всегда гарантировано равняться нулю.
2. В ID=0x43 байт D1 должен всегда гарантировано равняться нулю.
3. В ID=0x43 байт D3 должен всегда гарантировано равняться нулю.
Если это не так, то требуется дополнительно выделить байт каждого сообщения, который сравнивается с нужной константой. В зависимости от расположения нужного байта это делается разными способами, в данном случае это делается с помощью "маски" (см. пример во вложении).
Важно: Обратите внимание, что все примеры диаграмм в данной теме созданы для контроллера CANNY 7.

Вложений в сообщении

Иконка вложения c7_mask.cfd 477 б, скачивался 207 раз, последний раз 2020-06-17 

23 (18-06-2020 10:29:24 отредактировано Trasserlong)

Re: Canny5.3 Pico индикация нажатия кнопок.

Денис, CANNY пишет:

Обратите внимание, что все примеры диаграмм в данной теме созданы для контроллера CANNY 7

Хороший вопрос... Я когда запускал вашу оболочку. Она всегда предлагала выбрать тот, или иной контроллер. Естественно я выбирал тот, с которым буду работать - 5.3 пико. И я полагал что все, что я создаю в вашей оболочке будет подходить именно для 5.3 пико. Если я именно ее выбрал.

Далее, я предполагал. Что используя примеры с форума как основу. Оболочка просто не даст мне ошибиться. И вписать какие либо параметры. Выходящие за пределы используемого контроллера и его возможностей. И должна существовать преемственность. То есть, то что работает на младших версиях. Должно работать на старших. Но не всегда наоборот. Ну, это в теории.

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

Раз это так, а это так. То ценность примеров с форума невелика. Так как повышаются требования к подготовке, повышается порог входа в ваше оборудование. И простота работы, не так уж и проста...
Получается так, что нужно знать особенности работы чего? Оболочки, железа еще чего то связанного с 5.3 пико и с 7-кой. Вот даже непонятно, что сейчас штудировать, и где вносить правки.

Ну и конкретный практический вопрос. Как это все можно сделать проще и быстрее. Куда хоть смотреть. Так как и форум уже немаленький, и вики по объему тоже за пару вечеров не прочитаешь. Да и непонятно что читать, что бы выловить эту разницу между пико и 7-й.

24

Re: Canny5.3 Pico индикация нажатия кнопок.

Все алгоритмы, в том числе представленные на форуме и в данной теме, работоспособны на всех типах контроллеров CANNY. Логика и особенности составления диаграмм одинаковые и алгоритмы могут переноситься с одного контроллера на другой.
У разных контроллеров отличается системное ПО и набор регистров (что связано с особенностями исполнения контроллеров: количество каналов, наличия тех или иных интерфейсов и т.п.).
Перенос алгоритма (диаграммы) из одного контроллера в другой может быть выполнен с помощью буфера обмена Windows: выделить всю диаграмму (Ctrl+A), скопировать в буфер (CTRL+C), создать файл для нужного контроллера, вставить содержимое буфера (CTRL+V). Останется заменить регистры на соответствующие новому контроллеру (они будут подсвечены красным цветом). У некоторых контроллеров совпадают даже адреса регистров и количество необходимых изменений минимально.

25 (18-06-2020 15:16:00 отредактировано Trasserlong)

Re: Canny5.3 Pico индикация нажатия кнопок.

Денис, CANNY пишет:

У разных контроллеров отличается системное ПО и набор регистров (что связано с особенностями исполнения контроллеров: количество каналов, наличия тех или иных интерфейсов и т.п.)

Константин, браво. Отличный, очень толковый ответ. Все стало на свои места. Спасибо. Все произошло так как вы и писали. Сейчас займусь перенастройкой с 7-ки на 5.3 пико. Только я это все проделал с помощью мышки.