Фев 102017
 

Разработка → Сделай шаг к ПЛИС

Программирование микроконтроллеров*, Программирование*, FPGA*

Ты ждал знак? Вот он!

Много лет я не решался начать программировать ПЛИС, потому что это сложно, дорого и больно (как мне казалось). Но хорошо, когда есть друзья, которые помогают сделать первый шаг. И теперь я не понимаю одного — ПОЧЕМУ Я ЖДАЛ ТАК ДОЛГО?

Сейчас я помогу сделать первый шаг и тебе!

А зачем оно мне?

Ты устал постоянно читать доки по своему МК или держать кучу информации в голове. Ты все переписал на asm, но скорости все равно не хватает. Ты подключил два внешних устройства к своему МК, подключаешь третье, но у тебя кончились прерывания, перестают работать те модули, что уже работали. Ты берешь другой МК, более мощный из той же линейки, но опять мануалы, регистры флагов, биты… ад. Меняешь платформу: переходишь на другой МК и выкидываешь на помойку свои знания по прежней платформе. Что бы ты не делал — оно дается тяжело. Ты находишь популярную платформу, в которой можно легко из компонентов собирать проект, но выше аппаратных ограничений данного МК все равно не удается прыгнуть… Где-то на краешке сознания иногда проскакивает мысль, что вот на ПЛИС это бы точно заработало быстро и параллельно, что это «именно та задача, которую бы надо решать на плис», но я стар/глуп/занят/etc чтобы суметь/начать такое делать.

Хочешь наконец вздохнуть свободно? Идем дальше!

Радость от разработки на ПЛИС

У меня был тяжелый рабочий день. С одной работы я приехал на вторую работу, потом на дачу, вечером домашние дела, уроки, потом семейный просмотр кино и только в 23 часа я оказался совершенно свободен! Сказать, что я был уставший — ничего не сказать. Но в таком состоянии я сел за ноут с твердой целью: сделать генератор меандра на 440 Гц. Прошло 20 минут и я уже слышал его в наушниках. Я не верил своим ушам! Еще 15 минут мне потребовалось, чтобы сделать ШИМ и менять громкость. К тому времени плата с ПЛИС у меня была всего с неделю и до этого я пролистал всего пару книг по Verilog.

В тот вечер я понял: ВОТ ОНО! Вот та платформа, в которой я быстро и легко могу превращать свои мысли в реально работающее железо!

Почему так?

Опишу плюсы, которые есть в изучении и применении ПЛИС, хотя их и так все знают:

  • Универсальность знаний — при смене модели МК нужно читать доки. При смене производителя МК нужно читать доки. Нужно постоянно читать доки, постоянно держать в голове кучу информации. При разработке на ПЛИС, если знаешь Verilog или VHDL, то можно не только программировать любой ПЛИС из линейки одного производителя, но и при желании перейти на другого (Altera, Xilinx). Хоть и будут моменты с освоением другой среды разработки, тонких аппаратных моментов, но сама суть подхода проектирования устройств на HDL от этого не изменится.
  • От идеи к железу — при разработке проекта, если тебе не хватает одного мк, то приходится выбирать другой. В принципе можно строить предположения справится или не справится этот МК с проектом. Либо есть какой-то конкретный МК и ты пытаешься туда вместить проект. Чаще всего именно так. Мне это чем-то напоминает подход моего деда, который делает лестницу из того, что есть в сарайке. Хотя можно спроектировать лестницу, купить досок, которые подойдут… От идеи к железу, а не наоборот.
  • Простота применения чужих разработок — можно взять чужой модуль и применить его в своем проекте. По коду сможете понять, как он работает. Даже, если он для xilinx, а вы делаете под altera. Иногда это получается не сарзу, но это проще, чем, например, добавлять двоичные библиотеки к проекту на c++/Qt
  • Независимость блоков. Блоки в HDL, как чистые фунции в ЯП. Зависят только от входных сигналов. Разработанный и отлаженный модуль в будет и дальше работать правильно, как бы не рос проект. Ничто снаружи не повлияет на правильность его работы изнутри. Да и вообще можно забыть, как он работает — это черный ящик. К тому же, блоки работают параллельно.

Проблема выбора

Сильно останавливают вопросы, что выбрать: Altera/Xilinx, Verilog/VHDL, какую отладочную плату взять. Но обо всем по порядку.

Производитель

Я выбрал Altera. Почему? Ну мы вот так с другом решили, хотя название Xilinx мне красивее. НО. Если ты сейчас не можешь выбрать, то я сделаю это за тебя. Тебе нужен Altera! Почему? Я не знаю. Сейчас важнее сделать шаг: сделать выбор. Я выбрал Altera и пока не пожалел.

Язык

Берем Verilog потомучто… ну ты понял.

Отладочная плата

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

В семействе Altera, за разумные деньги мы можем купить платы с CPLD MAX II на 240, 570 и 1270 элементов, либо более старшие микросхемы FPGA, которые Cyclone 1, 2, 3, 4 с количеством до 10000 и более ячеек. Как же выбрать?

Даже на базе 240 ячеек, проект Марсоход делает просто огромное количество проектов. Настоятельно рекомендую ознакомиться, чтобы иметь примерное представление о сложности проектов, которые можно уместить в 240 ячеек. С другой стороны, существуют проекты, которые полностью программируются под аппаратную копию определенного ПК, включая процессор и всю логику вокруг него (NES, Speccy, Orion, ЮТ-88, etc). Для этого уже требуется пять, десять и более тысяч ячеек. Плюс эти платы содержат дополнительные внешние устройства.

Поэтому я бы посоветовать взять что-то среднее между 240 и 10000 ячейками, с предпочтением в сторону увеличения в зависимости от доступных средств. На отладочной плате лишние ячейки это не страшно, а если их не хватит — уже ничего не поделаешь. Потом, когда устройство отлажено, станет ясно, сколько надо ячеек, купить под нужное количество, без лишнего «обвеса», дешевле и оставить в готовом устройстве.

То, чем действительно отличаются MAX от Cyclone’ов, кроме количества ячеек, это:
1) У серии MAX внутри нет PLL. На каждой отладочной плате есть генератор, как правило на 50 МГц. Основной массе проектов этого будет достаточно. Все синхронизации будут происходить путем деления 50 МГц на какое-нибудь значение. Либо, можно взять внешний генератор и подать на отдельный вход ПЛИС. А что, если потребуется частота выше 50 МГц? Мне не удалось с ходу найти генераторы выше 50 МГц. Но тут как раз на помощь и приходит PLL, который встроен в Циклоны. На нем можно умножить частоту, например, до 100 МГц.
2) В серии Cyclone встроены аппаратные блоки умножения. Их количество зависит от конкретной модели — тут как раз можно «всетаки заглянуть в инструкции», чтобы узнать сколько. Если предполагаете делать какой-то ЦОС, то они пригодятся: сэкономят ячейки, увеличат скорость. С другой стороны, если нет умножителей, их можно синтезировать, но у маленькой ПЛИС на это может не хватить ресурсов.

Во всем остальном у меня критерий «влезло/не влезло». Отладка на заведомо бОльшей, чем нужно плате, с последующей заливкой в минимально необходимую для этого.

Сколько нужно денег?

Программатор
Я считаю, что у меня нет времени, чтобы паять программаторы на рассыпухе.

300 рублей. Я свой брал на ебее, выглядит так:

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

Начальный уровень 350 — 550 рублей. Это платы на MAX II (240 или 570 ячеек). Могут подойти для начального ознакомления и дальнейшего пристройства в конечные устройства. На плате есть генератор, пара кнопок, пара светодиодов, остальные 80 выводов на свое усмотрение.

Блок питания
Обязательно должен быть, но не всегда идет в комплекте. Потребуется БП на 5 вольт и ток 2А.

Средний уровень от 900 до 1500 рублей. Это платы Cyclone 1, 2, 3, 4 отличающиеся в основном количеством ячеек.
Маркируются примерно так:
EP2C5T144 — Cyclone 2 примерно 5к ячеек
EP4CE6E22C8N — Cyclone 4 примерно 6к ячеек
EP2C8Q208C8N — Cyclone 2 примерно 8к ячеек

Можно заметить, что Cyclone 3 может иметь больше ячеек, чем Cyclone 4.

Вот несколько вариантов:

835 рублей.
ALTERA FPGA CycloneII EP2C5T144 Minimum System Board for Learn good

880 рублей
Altera CycloneII EP2C5T144 FPGA Mini Development Learn Core Board E081

1265 рублей
EP2C8 EP2C8Q208C8N ALTERA Cyclone II FPGA Evaluation Development Core Board

Платы с расширенными возможностями. Это платы, на которых установлены дополнительные модули (UTP, USB, AUDIO), разъемы (SD, VGA), кнопки, переключатели, светодиоды, семисегментные индикаторы и т.д. Либо может идти базовая плата, а к ней могут прилагаться платы расширения отдельно.

У меня трудится такой комплект — плата + плата расширения:
Altrea EP4CE10E22 FPGA CORE Board+ Device Board USB/Sound/Ethernet/SD Card/VGA
2760 рублей

Вот основная плата. На ней есть 2 светодиода, 2 кнопки, 4 переключателя, семисегментный интикатор и микросхема оперативной памяти.

Плата расширения. На ней распаяны SD, VGA, а так же контроллеры USB(High Speed USB2.0 Chip: CY7C68013A), AUDIO(Sound Card up to 96kHz/32bit ADC/DAC: WM8731S), UTP(100M Ethernet interface: DM9000A):

Эти платы просто вставляются одна в другую, но у меня она пока лежит в ящике. Для своих поделок у меня макетка, с которой я соединяюсь шлейфом, который идет в комплекте. Еще в комплекте идет блок питания на 5 вольт.

Еще варианты:

Altera Cyclone NIOS II SOPC FPGA Development Learning Board EP2C8Q208C8N+LCD1602 — 2670 рублей

Terasic Altera FPGA DE0-Nano Cyclone IV Development and Education Board — 4600 рублей

Широкий выбор альтеровских плат и расширений к ним
Проект Марсоход

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

Заказал, ждем

Пока идут платы, можно начать себя морально и технически готовить:
— Установить Quartus II v.11.1
Почитать:
— Книга: А.К. Поляков Языки VHDL и Verilog в проектировании цифровой аппаратуры 2003
www.kit-e.ru/articles/circuit/2008_3_161.php — Краткий курс HDL
— Уроки на марсоходе по верилогу, архитектура, простые советы по стилю.
VERILOG как образ жизни
Хорошие примеры (EN)
Как начать работать с ПЛИС (Xilinx)

Синтезатор AD9850

 Arduino  Комментарии к записи Синтезатор AD9850 отключены
Янв 312017
 

Зайдя в очередной раз на сайт местного радиомагазина, обнаружил в продаже интересный девайс. Модуль DDS (direct digital synthesis) — синтезатор частоты на микросхеме AD9850. Такой:

Заявленные характеристики:

  • частота генерации от 0,029 Гц до 62,5 МГц;
  • количество разрядов ЦАП – 10;
  • выходной ток ЦАП – до 10,24 мА при напряжении ограничения 1,5 В;
  • встроенный компаратор для получения двух оппозитных ТТЛ выходов;
  • возможность цифрового управления частотой как по параллельному, так и по последовательному интерфейсу;
  • напряжение питания – 5 В;
  • потребляемый ток до 96 мА.

И вот, приобретя данный девайс, я решил тряхнуть стариной и исключительно для удовольствия и из любви к искусству изготовить блок управления любительским КВ приемником прямого преобразования на диапазоны 40 и 80 метров.

Для управления модулем синтезатора будем использовать ARDUINO UNO R3 (в моем случае – китайский совместимый клон). Информацию о частоте и других параметрах будем отображать на алфавитно-цифровом ЖК дисплее 16*2, регулировать частоту будем энкодером, переключение диапазонов – логический уровень «0» или «1» на одном из входов ARDUINO.

Схема устройства:

Выходной синусоидальный сигнал снимается с выхода OUT2 платы синтезатора. Амплитуда 0,5 В, постоянная составляющая – 0,512 В, выходное сопротивление – 100 Ом.

Выдаваемые частоты по диапазонам:

  • 80 м – 1745,00 – 1900,00 кГц (принимаемый диапазон 3490 – 3800 кГц);
  • 40 м. – 3500,00 – 3610,00 кГц (принимаемый диапазон 7000 – 7220 кГц).

Смеситель приемника прямого преобразования работает на частоте гетеродина, равной половине частоты принимаемого сигнала, поэтому выходные частоты синтезатора имеют соответствующие значения. При этом на ЖК дисплей выводится значение частоты принимаемого сигнала, т.е. из диапазона, указанного в скобках.

Для регулирования частоты используется энкодер BR1 на 24 положения, 5 выводной, с кнопкой. Кнопка энкодера управляет режимом «Грубо/Точно». После включения устройства по умолчанию включен режим «Грубо». При этом шаг изменения частоты принимаемого сигнала – 1 кГц. При однократном нажатии на кнопку (вал) энкодера режим переключается в «Точно». Шаг изменения частоты принимаемого сигнала при этом уменьшается до 10 Гц. При этом на ЖК дисплее справа от значения частоты отображается буква «Т». Повторное нажатие кнопки энкодера возвращает режим «Грубо».

На нижнюю строку ЖК индикатора выводится полоса прогресса, отображающая текущую частоту относительно полного диапазона.

Переключение диапазонов осуществляется подачей логического «0» (диапазон 80 м) или «1» (диапазон 40 м) на вход «BAND». Вход активный, т.е. при обрыве линии, на нем присутствует логическая единица, благодаря подключенному внутреннему подтягивающему резистору контролера ARDUINO. Таким образом, для переключения диапазонов достаточно механической коммутации данного входа на массу.

На вход ААС подается напряжение АРУ приемника для вывода на дисплей показаний S-метра. В моем случае напряжение АРУ 6-10 В соответствует величине принимаемого сигнала S9- S1 соответственно. Значение S выводится на ЖК дисплей.

Кроссовая плата устройства односторонняя, разведена в программе SprintLayout, изготовлена методом ЛУТ. Вид со стороны элементов:

Готовая плата:

Поработав паяльником, получили набор:

В сборе:

В работе:

При разработке использовались материалы статьи: http://nr8o.dhlpilotcentral.com/?p=83

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

Прикрепленные файлы:

22 January, 2017 21:56

 Arduino  Комментарии к записи 22 January, 2017 21:56 отключены
Янв 222017
 

Оптические датчики сердечного ритма. Простой кардиомонитор

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

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

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

Возвращаясь к электронике, измерить пульс можно разными способами: при помощи оптопары (светодиод, фотодиод) на просвет части тела или на отражение, при помощи микрофонной техники, при помощи измерения электрической активности сердечной мышцы (ЭКГ), при помощи пьезодатчиков и даже по видеоизображению лица в новейших разработках и др.

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

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

Схема датчика:

Технические характеристики датчика пульса:

  • Напряжение питания от 3 до 5 В
  • Ток потребления при напряжении питания примерно 2 мА
  • Диаметр модуля 16 мм
  • Тип выходного сигнала аналоговый
  • Способ детектирования сердечных сокращений по отраженному сигналу

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

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

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

Схема устройства:

Схема построена на базе микроконтроллера STM32F103C8T6. В качестве индикатора используется TFT LCD дисплей разрешением 240х320 c интерфейсом SPI на базе контроллера ILI9341. Питание схемы 3,3 В (при питании 3,3 В дисплей будет работать), что позволяет использовать Li-ion аккумуляторы при некоторой модернизации схемы для мобильности и безопасности устройства. Датчик пульса подключается к нулевому каналу АЦП1 микроконтроллера. Аналогично осциллографу по измерениям АЦП строится график на экране дисплея. По значению времени между пиками (отмеряется таймером микроконтроллера) кардиограммы определяем частоту пульса в единицу времени. Каждую миллисекунду происходит прерывание, в котором отсчитывается количество миллисекунд между пиками кардиограммы, то есть период. Для перевода в значение сердечных сокращений в минуту применяем формулу:

60000(мсек)/ΔT (мсек)

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

Итак, получив данные о сердечных сокращениях, можно судить о здоровье следующим образом. У среднестатистического взрослого человека нормальный пульс составляет 60-80 ударов в минуту. У спортсменов это значение значительно ниже и более стабильно при физических нагрузках. У женщин обычно пульс чаще, а у детей в зависимости от возраста значительно чаще, чем у взрослых. Необходимо отметить, что учащение пульса возникает при физической нагрузке, при нервном напряжении, курении, потреблении чая, кофе и алкогольных напитков. Измерьте пульс в то время, когда вас посетили волнения и нервное напряжение. По величине отклонения пульса можно определить, что у вас уже имеется невроз. Наиболее нервные люди, часто волнуясь по пустякам, напрягают свою нервную систему, и тут же сердце реагирует учащенным пульсом, а сосудистая система — увеличением артериального давления. Вначале у таких людей появляется сердечно-сосудистая дистония, невроз сердца, а затем наступают серьезные заболевания сердечно-сосудистой системы. Если ваш пульс реагирует учащением на мелкие неприятности, то необходимо срочно дать отдых организму и заняться собственным оздоровлением. Учащение пульса более 100 ударов в минуту называется тахикардией и требует к себе особого внимания. По этому поводу вы обязательно должны показаться врачу. Понижение пульса до значения ниже 50 ударов в минуту называется брадикардией и также требует к себе особого внимания. По этому поводу вы обязательно должны показаться врачу, если только вы не являетесь спортсменом или не практикуете йогу. При сердечной недостаточности пульс очень медленный и слабый. Сердечная недостаточность требует обязательного вызова врача.

Ритм пульса определяется интервалами между отдельными пульсовыми ударами. У здорового человека пульсовые временные интервалы всегда одинаковы. Аритмия — это неправильность пульса, характеризуемая неодинаковыми интервалами. Неритмичный пульс может иметь несколько разновидностей. Экстрасистолия — это аритмия, связанная с появлением на интервале лишнего удара. Мерцательная аритмия характеризуется беспорядочностью пульса. Пароксизмальная тахикардия — это внезапное сильное сердцебиение.

Список радиоэлементов

Обозначение Тип Номинал Количество Примечание Магазин
IC1 МК STM32 STM32F103C8 1 Поиск в Fivel
VR1 Линейный регулятор AMS1117-3.3 1 Поиск в Fivel
Z1 Кварц 8 МГц 1 Поиск в Fivel
R1 Резистор 100 Ом 1 Поиск в Fivel
R2-R4 Резистор 10 кОм 3 Поиск в Fivel
R5 Резистор 390 Ом 1 Поиск в Fivel
C1, C2 Конденсатор 22 пФ 2 Поиск в Fivel
C3-C7, C9 Конденсатор 100 нФ 6 Поиск в Fivel
C8 Электролитический конденсатор 220 мкФ 1 Поиск в Fivel
C10 Электролитический конденсатор 100 мкФ 1 Поиск в Fivel
HL1 Светодиод 1 Поиск в Fivel
S1 Тактовая кнопка 1 Поиск в Fivel
HG1 LCD-дисплей ILI9341 1 Поиск в Fivel
MOD1 Датчик пульса Pulsesensor 1 Поиск в Fivel

Скачать список элементов (PDF)

Прикрепленные файлы:

Mach3 поиск 0 по оси Z

 Arduino  Комментарии к записи Mach3 поиск 0 по оси Z отключены
Янв 072017
 

То, что творится с инструкциями по обнулению оси Z, это, конечно, полный бардак. Одни не понимают что они пишут, другие не понимают что они читают, ломают фрезы и бросают эту полезную затею.
Может где и есть понятные инструкции, но мне они не попались, поэтому пишу свою.

Итак: Задача установить инструмент в точку ноль по оси Z в программе MACH3.
Алгоритм:
Ось Z опускается на заданную величину (10мм). Если происходит замыкание, то ноль по Z устанавливается с учетом толщины пластину и происходит отскок безопасности на 5 мм. Если замыкания не обнаруживается, то ось Z просто останавливается. Толщину пластины и скорость опускания можно задать в скрине Мач3. Остальные параметры в тексте скрипта.

В программе Мач3 есть возможность обнаружить момент замыкания входа LPT на землю. Обычно это контакт между фрезой и металлической деталью или вспомогательной пластиной. Для этого один контакт мы присоединяем к фрезе, а другой к детали или к пластине.
1.На контроллере находим свободный входной пин разъема LPT. Это пины 10, 11, 12, 13 или 15. Например, 12. И к этому разъему присоединяем один контакт, другой к земле.
1. Выбираем свободный номер пина, заходим в Config->Ports-and-Pins->Input-Signals->Probe и ставим галочки в Enable и ActiveLow. В PinNumber выставляем номер пина.
2. Толщина пластины. Если мы обрабатываем металлическую деталь или печатную плату, то вторым контактом будет сама деталь, пластина не нужна и поправка на ее толщину будет ноль. Если деталь не токопроводящая, то нужна вспомогательная пластина. Т.е. необходимо иметь параметр, где мы можем задать толщину пластины.
Что, например, можно сделать.
Скачиваем с официального сайта программу Screen4.exe — это дизайнер экранов программы Мач, и размещаем ее в директорию Мач. Стартуем, открываем файл 1024.set — стандартный файл скринов Мача, переименовываем и сохраняем под другим именем. Теперь мы можем изменять экраны. Нам надо добавить параметр для установки толщины пластины. Выделяем, например, поле Z inhibit, делаем Copy->Paste и размещаем, например, так:
Изображение
Кликаем дважды левой кнопкой, и в поле OEM-Code-Function пишем 1151. По этому номеру мы можем теперь считать в программе значение этого поля.
Сохраняем скринсет. Стартуем Мач, в View-LoadScreens выбираем и загружаем модифицированный экран Мача с новым полем.
3. Теперь нам надо стартовать установку нуля. Для этого используется кнопка AutoToolZero. При нажатии на эту кнопку начнет выполняться программа, контролирующая установку нуля. Эта программа написана на языке VBscript. Такие программы широко используются и называются скриптами. Текст программы или заглушку можно увидеть по Operator->EditButtonScript, а затем кликнуть по мигающей кнопке AutoToolZero.
Вот сюда-то и надо скопировать или ввести программу установки нуля. Не забыть потом сохранить ее и профиль Мач3, при выходе из программы.
4. Скрипт. Количество скриптов для установки нуля превышает разумные пределы. Многие из них работают, хотя авторы даже не понимают, что рекомендуют. Давайте рассмотрим один из вариантов, доработанных мною до состояния, которое меня устроило. Заодно и скрипты изучил немного. Это мой первый скрипт, поэтому замечания приветствуются.

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

Rem VBScript To probe In the z axis
‘ Это комментарий
If GetOemLed (825) <> 0 Then ‘ Проверяем, может быть ноль уже установлен
‘ Расшифровки параметра в GetOemLed находятся в файле LEDCodes.txt
Code «(Z-Plate is grounded or check connection and try again)» ‘ выводим сообщение об этом
Else
‘ Если ноль не установлен, то пробуем его найти
Code «G4 P1» ‘ Пауза в 1 сек
PlateOffset = GetUserDRO(1151) ‘ считываем значение нового поля. Это толщина пластины.
‘ Значения параметров GetUserDro и GetOemDro находятся в файле DroCodes.txt
CurrentFeed = GetOemDRO(818) ‘ счтываем значения поля Feedrate. Это текущая скорость мм/мин
‘ Эту скорость можно изменить перед поиском нуля в скрине Мача
MyFeed = 100 ‘ скорость поиска нуля мм/сек для вашего станка
‘ Зависит от крепости фрезы
‘ Если скорость больше MyFeed, то мы ее уменьшаем до MyFeed.
‘ если меньще MyFeedRate, то устанавливаем меньшую скорость. Ту, которая в Маче
If CurrentFeed>MyFeed Then
Code «F» &MyFeed ‘ Эту скорость вы можете установить под свой станок как стандартную
Else
Сode «F» &CurrentFeed
‘ Эту скорость вы всегда можете установить для конкретного поиска нуля
End if
‘ Начинаем искать ноль
ZNew = GetDro(2) — 10 ‘ Устанавливаем точку на 10мм ниже текущей высоты Z
Code «G31Z» &ZNew ‘ Идем в эту точку с контролем замыкания контактов Probe
While IsMoving() ‘ Ждем пока ось Z дойдет до точки -10мм
Wend

ZNew = GetVar(2002) ‘ Считываем значение по Z в момент замыкания
Code «G1 Z» &ZNew ‘ Если проскочили, то возвращаемся
While IsMoving () ‘ Ждем возвращения
Wend
If GetOemLed (825) <> 0 Then
‘ Проверяем нашли ноль или просто опустились по Z на 10мм
‘ Проверяем толщину пластины
‘ если она ненулевая, то корректируем ось Z с учетом ее толщины, иначе 0
Call SetDro (2, PlateOffset) ‘ новая точка 0 по Z
Code «G4 P0.5» ‘ ждем установку по Z 0.5 сек

ZNew = 5 ‘ отскок безопасности по Z. Можете поменять
Code «G1 Z5 F200» ‘ идем в точку отскока
While IsMoving () ‘ ждем прихода в отскок
Wend
Code «(Z axis is now zeroed)» ‘ выводим сообщение об установке нуля.

Else
‘ Замыкания не достигли. Просто опустились на 10мм
Code «(Z-Plate ie not grounded. Try again.)» ‘ сообщение об этом
End If

Code «F» &CurrentFeed ‘ возвращаем значение скорости
End If

Текст скрипта находится в директории Macros->»профиль» под именем HiddenScript.m1s
Но при старте Mach3 скрипт берется из профиля. Так что если у вас не обновился профиль после изменения скрипта, при старте Мач3 получите старый скрипт.

Рабочий скрипт:

Rem VBScript To probe In the z axis
If GetOemLed (825) <> 0 Then ‘Check to see if the probe is already grounded or faulty
Code «(Z-Plate is grounded or check connection and try again)» ‘this goes in the status bar if aplicable

Else
Code «G4 P1» ‘Pause 1 seconds to give time to position probe plate
PlateOffset = GetUserDRO(1151) ‘Get plate offset DRO
CurrentFeed = GetOemDRO(818) ‘Get the current feedrate to return to later
MyFeed = 100
If CurrentFeed > MyFeed Then
Code «F» &MyFeed ‘slow down feedrate to 100 mmpm
Else
Code «F» &CurrentFeed
End If
Rem Probe In the z direction
ZNew = GetDro(2) — 10 ‘probe move to current z — 10mm
Code «G31Z» &ZNew
While IsMoving() ‘wait for probe move to finish
Wend

ZNew = GetVar(2002) ‘read the touch point
Code «G1 Z» &ZNew ‘move back to hit point incase there was overshoot
While IsMoving ()
Wend
If GetOemLed (825) <> 0 Then ‘ Zero or Not

Call SetDro (2, PlateOffset) ‘set the Z axis DRO to plate thickness
Code «G4 P0.5» ‘Pause for Dro to update.

ZNew = 5 ‘ Up to 5mm
Code «G1 Z5 F200» ‘&ZNew ‘put the Z retract height you want here
While IsMoving ()
Wend
Code «(Z axis is now zeroed)» ‘puts this message in the status bar
Else

Code «(Z-Plate is not grounded. Try again.)»
End If

Code «F» &CurrentFeed ‘Returns to prior feed rate

End If
Rem Finalized by George164 05/03/2012

Прошивка любого Hex-файла в Arduino

 Arduino  Комментарии к записи Прошивка любого Hex-файла в Arduino отключены
Дек 062016
 

104-Прошивка любого Hex-файла в Arduino при помощи штатного загрузчика (Bootloader).

Автор: GetChiper | 15.12.2013
56 комментариев

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

Нас, прежде всего, интересуют три платы Arduino:
Arduino Uno – как самый распространенный вариант
Arduino Nano – компактный вариант, удобный для применения в небольших конструкциях
Arduino Pro Mini – дешевый компактный вариант без встроенного USB-UART преобразователя (для работы с ним понадобится внешний USB-UART преобразователь), но удобный в случае применения сети устройств.

Arduino_UNOArduino_NANOArduino_PRO_MINI

Во всех вышеописанных платах используется микроконтроллер ATmega328 (в более старых версиях ATmega168).

ATmega48_88_168_328.pdf — Даташит на ATmega48A-48PA-88A-88PA-168A-168PA-328-328P

Одной из главных причин выбора платы Arduino для проекта робота была возможность записывать прошивку устройства в МК не применяя программатора и каких либо дополнительных устройств. Все что нужно для прошивки микроконтроллера Arduino – это стандартный USB шнур (который входит в комплект Arduino).

Это значит, если Вы имеете Ардуину – Вы имеете любое устройство ZiChip!

Запись программы в МК через USB происходит через специальный загрузчик (Bootloader), который записан в МК при изготовлении платы. Вообще, загрузчик предназначен для работы со своим специальным программным обеспечением Arduino IDE, но в случае, когда необходимо прошить в Ардуину что-то постороннее (свой Hex-файл), есть программки позволяющее это реализовать.

Начнем с маленькой и удобной
XLoader (Arduino HEX uploader)

XLoader.zip — Программа для записи Hex-файла в Arduino

Программка имеет аскетичный интерфейс и работать с ней предельно просто:
— подключаем Arduino в USB-порт (отдельного питания не нужно)
— выбираем Hex файл
— выбираем тип Вашего Arduino
— выбираем COM порт, который создался при подключении Arduino к USB (скорость порта автоматически подставится при выборе типа Arduino)
— жмем Upload

Это все! Ничего сложного. Прошивка через несколько секунд будет записана в МК и автоматически запустится. Один минус – программа никак не сообщает о том, что прошивка уже записана, но это можно увидеть по прекращению мерцания светодиодов RXD и TXD на Ардуине.

XLoader использует для записи прошивки AVR Dude и в качестве протокола программирования используется STK500. Но, похоже, в настройках AVR Dude, произведена коррекция, так как использование стандартного AVR Dude с такими же настройками не дает результатов.

Автоматизация XLoader.

При разработке ПО для микроконтроллера производится очень много прошивок и всегда нужно стремиться автоматизировать этот процесс после сборки проекта — это экономит время и нервы. В данном случае автоматизация усложнена, так как программа не показывает командную строку для AVR Dude (разве что подбирать опытным путем), но некоторое упрощение процесса возможно. Делается это следующим способом – после первой прошивки не закрываем окно программы (COM порт после прошивки программа отпускает) и после следующей сборки проекта просто жмем кнопку «Upload». Конечно, сборка должна осуществляться в один и тот же Hex-файл.

Еще одна программка
ARP Uploader (Arduino Hex Uploader and Programmer)

ArduinoUploader.zip — Программа для записи Hex-файла в Arduino

Как и предыдущая, программка имеет простой интерфейс.
Процесс прошивки тот же:
— подключаем Arduino в USB-порт (отдельного питания не нужно)
— выбираем Hex файл
— выбираем тип Вашего Arduino
— выбираем COM порт
— жмем Upload

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

При попытке прошить Arduino Nano программа отказывалась видеть МК. Причиной стала неправильная установка скорости COM порта. По умолчанию скорость стоит 19200, а нужно 57600. Скорость порта в программе не задается явно, она прописывается в строчке «AVR Dude Params» — поменяйте в ней значение 19200 на 57600.

Автоматизация ARP Uploader.
ARP Uploader как и XLoader работает через AVR Dude, но, в отличие от XLoader, показывает командную строку. Это дает возможность использовать AVR Dude напрямую в Make или Bat файле.

Дополнительные материалы.
Драйвера Arduino.

Считаю не лишним напомнить, что для связи Arduino с компьютером в последнем должны присутствовать драйвера. Оставляю здесь архив с драйверами для Arduino (включая и старые драйвера в Old_Arduino_Drivers.zip и драйвера для FTDI-чипа в папке «FTDI USB Drivers»

Arduino_drivers.zip — Драйвера для Arduino

Стали появляться недорогие китайские Ардуины с драйвером CH340G
Driver CH340G.zip — Драйвер для преобразователя USB-UART

Загрузчики Arduino

Если Вы решите собрать свою плату Arduino (а сложного там ничего нет, фактически, это голый ATmega328 или ATmega168), Вам понадобится загрузчик Bootloader который должен содержать МК для работы со средой (или программками для заливки Hex-файлов). Конечно, Вам для записи Hex-файлов в чистый МК понадобится программатор и придется выставить фьюзы.

ATmegaBOOT_168_atmega328.hex — Bootloader для ATmega328
Для правильной работы нужно установить фьюзы следующим образом Low: FF High: DA Ext: 05

ATmegaBOOT_168_diecimila.hex — Bootloader для ATmega168
Фьюзы Low: FF High: DD Ext: 00

Схемы Arduino

Cхемы вышеописанных Ардуин.
Arduino_Uno_Rev3-schematic.pdf — Схема Arduino Uno
ArduinoNano30Schematic.pdf — Схема Arduino Nano
Arduino-Pro-Mini-schematic.pdf — Схема Arduino Pro Mini

Фьюзы установленные по умолчанию в Arduino (только с ATmega328)
Arduino Uno
Low Fuse 0xFF
High Fuse 0xDE
Extended Fuse 0x05

Arduino Duemilanove or Nano w/ ATmega328
Low Fuse 0xFF
High Fuse 0xDA
Extended Fuse 0x05

Arduino BT w/ ATmega328
Low Fuse 0xFF
High Fuse 0xD8
Extended Fuse 0x05

LilyPad Arduino w/ ATmega328
Low Fuse 0xFF
High Fuse 0xDA
Extended Fuse 0x05

Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega328
Low Fuse 0xFF
High Fuse 0xDA
Extended Fuse 0x05

(Visited 25 343 times, 70 visits today)

Раздел: Полезные программы Программаторы и преобразователи Метки: Arduino, ATmega328

Кинезио тейп

 Arduino  Комментарии к записи Кинезио тейп отключены
Ноя 232016
 

Кинезио тейп — лечебно профилактический пластырь для мышц и суставов

1367 0

кинезио пластырьКинезио тейп (бинт эластичный ленточный малой растяжимости адгезивный) — это эластичная хлопковая лента, разработанная на клейкой основе, которая применяется в спортивной медицине при реабилитации после травм.

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

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

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

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

принцип действия кинезиобинта

Содержание статьи

Цели использования

Цели использования пластыря:

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

цели кинезиотейпирования

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

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

Чем кинезиотейп отличается от традиционных бинтов

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

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

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

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

преимущества тейпов

Особенности и методы наложения

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

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

методы наложения кинезиотейпа

Пластырь нужно приклеить так, чтобы мышца было подтянута вдоль волокон. Одной накладкой пользуются в течение четырех-шести дней. Максимальный эффект будет достигнут при эластичности пластыря 50-70%.

Для того, чтобы правильно наложить тейп нужно:

  1. Определить с какой целью это делается. При мышечной и суставной боли пластырь рекомендуется накладывать по периметру травмированной зоны, в которой соответственно имеются болевые ощущения. Во время использования пластыря для коррекции детской осанки или же плоскостопия кинезиотейп необходимо наложить по длине позвоночника или стопы. Если же возникает необходимость защитить мышцы во время занятия спортом, то приклейте его на проблемные зоны.
  2. В зоне наложения сбрить лишние волосы.
  3. Обезжирить кожу спиртом, а затем использовать ленту.
  4. После приклеивания необходимо подождать в течение получаса, пока клей начнет взаимодействовать с кожей и лишь, потом начинать занятия спортом.

Полезные видео материалы

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

загрузка…

Металлизация 2

 Технологии  Комментарии к записи Металлизация 2 отключены
Ноя 042016
 

Металлизация отверстий в картинках (часть ІІ, подготовка к гальванике)

Технологии
Продолжение описания процесса металлизации отверстий в домашних условиях начатое в первой части.

Напоминаю: РАБОТАЕМ В ПЕРЧАТКАХ!
Применительно к данному этапу ВАЖНО ПОМНИТЬ СЛЕДУЮЩЕЕ:
1. ЗАГОТОВКИ РУКАМИ КАСАТЬСЯ НЕЛЬЗЯ, ДАЖЕ В ПЕРЧАТКАХ!
2. ОТКРЫТАЯ ЕМКОСТЬ С АКТИВАТОРОМ ЯВЛЯЕТСЯ ИСТОЧНИКОМ АММИАКА! ДЕРЖИТЕ ГОЛОВУ ПОДАЛЬШЕ ОТ НЕЕ!

Continue reading »

металлизация печатных плат.

 Технологии  Комментарии к записи металлизация печатных плат. отключены
Ноя 042016
 

Металлизация отверстий в картинках (часть І, приготовление активатора)

Технологии
Давно собирался описать процесс металлизации в подробностях, но все никак не мог завершить эксперименты с разными добавками в активатор (и их количеством), вылизывал все технологические шаги. Ну и какое-то время просто не мог окончательно определиться с тем, какой вариант описывать. После некоторых колебаний решил все-таки описывать вариант с добавкой жидкого мыла. Выбор на этот вариант пал по двум причинам: реактивы доступнее и после термолиза заготовка отмывается гораздо легче. Второй пункт особенно важен в этой технологии, поскольку городить вторую гальванику как-то не улыбалось (хотя «на коленке» я этот вариант отмывания продуктов пиролиза и попробовал). Из минусов — необходимость делать активацию быстро, но тут сложно сказать, минус это или плюс.

Continue reading »

ГРИ часы под управлением ESP8266

 Arduino, Электронные прибамбасы  Комментарии к записи ГРИ часы под управлением ESP8266 отключены
Окт 152016
 

ГРИ часы под управлением ESP8266

Опубликовано 21.09.2015.
Создано при помощи КотоРед.

О конструкции.

Основой часов служит модуль ESP-12(WiFi) с чипом ESP8266 китайской компании Espressif. Пожалуй, радиолюбитель у которого есть интернет, уже знает или хотя бы слышал об этих модулях. Останавливаться на описании смысла нет.

Continue reading »

Установка и настройка Яндекс диск в Ubuntu

 Ubuntu, Всяческие настройки  Комментарии к записи Установка и настройка Яндекс диск в Ubuntu отключены
Сен 092016
 

Главная » Блог » Яндекс Диск » Установка и настройка Яндекс диск в Ubuntu 14_04

Установка и настройка Яндекс диск в Ubuntu

Думаю многие из вас пользуются сервисом Яндекс Почта и дополнительно пользуетесь возможностью хранить файлы в сервисе Яндекс диск. Очень удобно и нет необходимости как пример дополнительно пользоваться Dropbox, во всяком случае мне этого достаточно.

Главный вопрос который сейчас у вас в голове, как же всё-таки установить и настроить Яндекс Диск в Ubuntu 14.04/14.10 и более новых дистрибутивах Ubuntu. Процедура очень проста, опускаемся чуть ниже и читаем первый пункт в подготовке к установке.

1. Главное, что сейчас нам необходимо, это загрузить пакет последней стабильной версии Яндекс диск для Ubuntu. Перейдем по адресу —http://repo.yandex.ru/yandex-disk/ после копируем ссылку на файл который соответствует вашей архитектуре.

  • Авторизуемся под суперпользователем введя в терминале sudo -s далее вводим свой пароль которого вы не увидите так и должно быть, все в целях безопасности, после ввода нажали клавишу Enter.
  • У меня 32 — bit процессор и соответственно, я копирую ссылку на файл i386, далее откроем терминал CTRL+ALT+F2 и выполним соответствующие команды.

2. Приступим к установке Яндекс диск, выполним в терминале команду, для 32-bit архитектуры:

wget http://repo.yandex.ru/yandex-disk/yandex-disk_latest_i386.deb && sudo dpkg -i *.deb

Установка пакета Яндекс Диск, для 64-bit архитектуры:

wget http://repo.yandex.ru/yandex-disk/yandex-disk_latest_amd64.deb && sudo dpkg -i *.deb

3. Следующий шаг — подключение к Яндекс-Диску, создаем папку ~/Yandex.Disk выполнив в терминале команду:

mkdir ~/Yandex.Disk

4. После приступаем к настройке клиента, выполним в терминале:

yandex-disk setup

5. Далее нужно будет пройти небольшой опрос:

  • Использовать прокси-сервер? [y/N]: n
  • Введите логин: логин в Яндекс-Диск
  • Введите пароль: Ваш пароль
  • Введите путь к папке Яндекс.Диска (Оставьте пустым для использования папки ‘/home/имя_пользователя/Yandex.Disk’): Нажмите Enter
  • Запускать Яндекс.Диск при входе в систему? [Y/n]: y(да) либо n(нет)

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

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

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

sudo yandex-disk start

Либо остановить в срочном режиме, выполним команду:

sudo yandex-disk stop

6. Внимание! Если вы используете двухфакторную аутентификацию, для авторизации в программе «Яндекс.Диск» нужен одноразовый пароль, сгенерированный приложением «Яндекс.Ключ».

7. Данный пункт более для удобства. Установим индикатор Яндекс.Диск в системный трей нашей системы Ubuntu

— первое, что нам необходимо, это добавить репозиторий и соответственно установить индикатор, выполним следующую команду в терминале:

sudo add-apt-repository ppa:slytomcat/ppa && sudo apt-get update && sudo apt-get install yd-tools

— запустим индикатор с помощью небольшой команды:

yandex-disk-indicator

Приложение Индикатор Яндекс диск 1.2.1

  • Либо в лаунчере Unity с помощью поиска найдем иконку и запустим индикатор Яндекс диск:

Индикатор Яндекс Диск через поиск в Unity

  • Настройка индикатора

Настройка индикатора сервиса Яндекс диск
Настройка сервиса Яндекс диск

  • На текущий момент я пока не до конца синхронизировал все файлы но индикатор выглядит у меня вот так.

Вид индикатора Яндекс диск на панели ubuntu

Вроде все выполнили. Теперь можно проверить нашу папку Yandex.Disk и синхронизировались ли уже (мои/ваши файлы в домашнюю директорию).

Проверяем синхронизацию файлов с сервиса Яндекс диск
Результат корректной работы приложения Яндекс диск

Как мы видим все корректно работает. Мои файлы с Яндекс диск теперь легко доступны просто перейдя в соответствующую директорию в домашнем каталоге, либо аналогичным способом копируем в директорию Yandex.Disk новые файлы которые автоматически загружаются на Яндекс диск.

Последний важный пункт чуть не забыл, нам нужно подписать приложение Яндекс диск с помощью специального ключа, в терминалевыполним команду:

wget -O YANDEX-DISK-KEY.GPG http://repo.yandex.ru/yandex-disk/YANDEX-DISK-KEY.GPG && sudo apt-key add YANDEX-DISK-KEY.GPG

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

Если вы не нашли что-то или у вас проблемы при настройке, прежде ознакомьтесь с инструкцией — https://yandex.ru/support/disk/cli-clients.xml после если будут вопросы, задавайте, постараемся решить вместе.

Всем удачной установки и настройки!

автор: Герук Юрий