Pull to refresh
53
0
Send message

Выбираем канал для точки доступа Wi-Fi. Исчерпывающее руководство

Reading time 9 min
Views 288K
2,4 ГГц — это плохо. 5 ГГц — это хорошо. 6 ГГц — это ещё лучше, но послезавтра. Все это знают, кого я тут учу, в самом деле. Всё это хорошо, только делать-то что, когда ты такой, как умный, открываешь какой-нибудь Wi-Fi Explorer, а там сатанизм и этажерки, как на скриншоте?



Шаг первый — поплакать. Шаг второй — нырнуть под кат. Вопрос простой, а ответ — нет.
Когда это нас останавливало?
Total votes 111: ↑110 and ↓1 +109
Comments 234

Векторное управление для асинхронного электродвигателя «на пальцах»

Reading time 9 min
Views 127K

В предыдущей статье «Векторное управление электродвигателем «на пальцах» рассматривалась векторная система управления для синхронных электродвигателей. Статья получилась большой, поэтому вопрос про асинхронные электродвигатели (induction motors) был вынесен в отдельную публикацию. Данная статья является продолжением предыдущей и опирается на приведенные там объяснения принципов работы электродвигателей. Она расскажет об особенностях работы асинхронного двигателя применительно к векторному управлению, а также покажет отличия в структуре векторной системы управления между синхронной и асинхронной машиной.
Как работает асинхронный электродвигатель? Наиболее популярное объяснение говорит что-то типа «статор создает вращающееся магнитное поле, которое наводит ЭДС в роторе, из-за чего там начинают течь токи, в результате ротор увлекается полем статора и начинает вращаться». Лично я от такого объяснения всю физику процесса понимать не начинаю, поэтому давайте объясню по-другому, «на пальцах».
Читать дальше →
Total votes 20: ↑20 and ↓0 +20
Comments 24

Музыка для ваших проектов: 12 тематических ресурсов с треками по лицензии Creative Commons

Reading time 7 min
Views 118K
Подборка пригодится разработчикам, дизайнерам, видеорежиссерам и контент-мейкерам, которые ищут музыку для своих проектов — приложений, игр или видеороликов.

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

Total votes 57: ↑56 and ↓1 +55
Comments 9

Конечный автомат (он же машина состояний) на чистом С

Reading time 5 min
Views 127K
Почти каждый микроконтроллерщик сталкивался с громадными switch-case и мучительно их отлаживал.
И много кто, начиная писать реализацию какого-либо протокола, задумывался как написать её красиво, изящно, так чтобы через месяц было понятно что ты имел в виду, чтобы она не отжирала всю память и вообще какала бабочками.
И вот тут на помощь приходят машины состояний, они же конечные автоматы (те самые которые используются в регулярных выражениях).

Собственно через регулярные выражения я к ним и пришёл.
Читать дальше →
Total votes 51: ↑48 and ↓3 +45
Comments 50

ShIoTiny: малая автоматизация, интернет вещей или «за полгода до отпуска»

Reading time 11 min
Views 20K



Основные тезисы или о чем эта статья


Так как интересы людей разные, а времени у людей мало, то кратко о содержании статьи.


Статья эта представляет собой обзор проекта контроллера с минимальной ценой и возможностью визуального программирования посредством WEB-браузера.


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


Рассмотрена мотивация, идеи и результаты построения контроллера на базе WiFI-чипа ESP8266.

Читать дальше →
Total votes 58: ↑56 and ↓2 +54
Comments 54

Что можно сделать через разъем OBD в автомобиле

Reading time 4 min
Views 62K
Ни для кого не секрет, что в современных автомобилях все системы под завязку забиты различной электроникой, даже простой стеклоподъемник имеет собственный микроконтроллер и адрес в общей сети. Мне, как интересующемуся владельцу, стало интересно, что же можно сделать имея просто доступ к разъему OBD и ничего более.
Total votes 67: ↑67 and ↓0 +67
Comments 72

Хакаем CAN шину авто. Виртуальная панель приборов

Reading time 14 min
Views 213K


В первой статье «Хакаем CAN шину авто для голосового управления» я подключался непосредственно к CAN шине Comfort в двери своего авто и исследовал пролетающий траффик, это позволило определить команды управления стеклоподъемниками, центральным замком и др.

В этой статье я расскажу как собрать свою уникальную виртуальную или цифровую панель приборов и получить данные с любых датчиков в автомобилях группы VAG (Volkswagen, Audi, Seat, Skoda).

Мною был собран новый CAN сниффер и CAN шилд для Raspberry Pi на базе модуля MCP2515 TJA1050 Niren, полученные с их помощью данные я применил в разработке цифровой панели приборов с использованием 7″ дисплея для Raspberry Pi. Помимо простого отображения информации цифровая панель реагирует на кнопки подрулевого переключателя и другие события в машине.

В качестве фреймворка для рисования приборов отлично подошел Kivy для Python. Работает без Иксов и для вывода графики использует GL.

  1. CAN сниффер из Arduino Uno
  2. Подслушиваем запросы с помощью диагностической системы VAG-COM (VCDS)
  3. Разработка панели приборов на основе Raspberry Pi и 7″ дисплея
  4. Софт панели приборов на Python и Kivy (UI framework)
  5. Видео работы цифровой панели приборов на базе Raspberry Pi

Под катом полная реализация проекта, будет интересно!
Total votes 195: ↑192 and ↓3 +189
Comments 224

Как я добавил функции автомобилю по шине CAN, не умея программировать

Reading time 4 min
Views 53K


Цель этой статьи — рассказать о моём опыте модификации автомобиля и экспериментах с шиной CAN.

С чего всё началось


Сначала я решил добавить фронтальную камеру в свой 2017 Chevrolet Cruze. Поскольку у автомобиля уже есть заводская камера заднего вида, то на высоком уровне нужно было выяснить две вещи:

  1. Способ передачи видео с фронтальной камеры, которую я добавлю.
  2. Способ отображения на экране картинки с камеры заднего вида в любое время.
Читать дальше →
Total votes 46: ↑45 and ↓1 +44
Comments 28

Управление автомобилем по CAN

Reading time 11 min
Views 51K

Введение


Беспилотный автомобиль StarLine на платформе Lexus RX 450h — научно-исследовательский проект, стартовавший в 2018 году. Проект открыт для амбициозных специалистов из Open Source Community. Мы предлагаем всем желающим поучаствовать в процессе разработки на уровне кода, опробовать свои алгоритмы на реальном автомобиле, оснащенном дорогостоящим оборудованием. Для управления автомобилем было решено использовать Apollo, открытый фреймворк. Для работы Apollo нам необходимо было подключить набор модулей. Эти модули помогают программе получать информацию об автомобиле и управлять им по заданным алгоритмам.

К таким модулям относятся:

  • модуль позиционирования автомобиля в пространстве с помощью GPS-координат;
  • модуль управления рулем, ускорением и торможением авто;
  • модуль состояния систем автомобиля: скорость, ускорение, положение руля, нажатие на педали и т.д.;
  • модуль получения информации об окружении автомобиля. С этим справятся ультразвуковые датчики, камеры, радары и лидары.

Прежде всего перед нашей командой стояла задача научиться управлять рулем, ускорением и торможением автомобиля. А также получать информацию о состоянии систем автомобиля. Для этого была проведена большая работу по изучению CAN-шины Lexus.
Total votes 19: ↑17 and ↓2 +15
Comments 29

Художественные детские книги про социнжиниринг

Reading time 3 min
Views 32K


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

В общем, ниже — очень короткий список самых обычных художественных произведений. Лёгких, простых, детских. Но про социальную инженерию. Потому что в каждой культуре есть персонаж-джокер, который немного психопат, немного шут и немного эффективный специалист. Список неполный, и я хочу попросить вас его продолжить.
Читать дальше →
Total votes 83: ↑82 and ↓1 +81
Comments 140

Настройка VSCODE под разработку для ARM на примере отладочной платы stm32f429i-disco

Reading time 2 min
Views 42K


Всем привет!


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


Все шаги проверены на виртуальной машине со свежеустановленной Ubuntu 16.04 xenial desktop x64.


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


Все настройки, касающиеся конкретного железа (в моём случае это контроллер STM32F429 и девборда STM32F429DISCO), нужно подменить на свои. То же самое касается и путей.


Если готовы, то

Читать дальше →
Total votes 38: ↑37 and ↓1 +36
Comments 53

STM32F103C8T6 как накопитель flash с файловой системой FAT12

Reading time 3 min
Views 15K
При разработках устройств часто бывает необходимым хранить настройки вне рабочей программы. Еще лучше иметь возможность их модификации без использования специальных средств.

Рассмотрим вариант хранения в пожалуй самых распространенных микроконтроллерах STM серии F103. Способствовала распространенности также всем известная макетная плата Blue Pill

image
Имеющаяся в ней flash позволяет не только хранить и модифицировать настройки используя файловую систему FAT12 во внутреннем flash, но и организовать обновление прошивки.

Согласно документации в STM32F103C8T6 имеется 64К flash памяти. Однако практически во всех STM32F103C8T6 установлено 128К. Об этом также упоминается в разных источниках — обычно ставят на 64К больше. Такая «фича» позволяет использовать микроконтроллер как flash накопитель объемом 128К — 20К (системные нужды FAT12) — размер прошивки.

Многие энтузиасты, пытавшиеся использовать данный контроллер как накопитель flash, сталкивались с проблемой его использования в режиме файловой системы FAT12. Использовать для снятия/заливки образа диска получалось. А вот при работе как с файловым накопителем начинались проблемы.
Читать дальше →
Total votes 38: ↑37 and ↓1 +36
Comments 12

Невозможная сковорода и другие победы плиток Пенроуза

Reading time 8 min
Views 45K
image

В 1974 году британский математик Роджер Пенроуз создал революционный набор плиток, который можно использовать для заполнения бесконечной плоскости никогда не повторяющимся узором. В 1982 году израильский кристаллограф Даниэль Шехтман открыл металлический сплав, атомы которого были выстроены в порядке, никогда ранее не встречавшемся в материаловедении. Пенроуз достиг масштабного общественного признания, редко достающегося математикам. Шехтман получил Нобелевскую премию. Оба учёных бросили вызов человеческой интуиции и изменили основы понимания структуры природы, обнаружив, что бесконечная вариативность может возникать даже в высокоупорядоченной среде.
Читать дальше →
Total votes 119: ↑119 and ↓0 +119
Comments 25

Опытное производство электроники за минимальный прайс

Reading time 10 min
Views 58K
Привет, Хабр!

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


А вот, например, совет держать включённый паяльник за ручку — полезный!

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

  • регулярно надо делать 5-10-50-100 плат с SMD-компонентами
  • по возможности быстро
  • по возможности дёшево

Если вы можете позволить себе — что по срокам, что по деньгам — услуги «Резонита» или «Компэла» (сотрудничающего, впрочем, с «Резонитом») по сборке модулей под ключ, то текст ниже в общем и целом не для вас. Однако, на практике даже в достаточно крупных компаниях люди, занимающиеся опытными образцами, часто собирают их сами — потому что это занимает пару дней вместо недели, потому что всегда можно на ходу что-то подправить, потому что не надо бегать между начальством и бухгалтерией со счетами и актами… В мелких же вопрос упирается попросту в деньги.

Тем более, что в наше время базовое оборудование, позволяющее делать подобные вещи достаточно быстро и достаточно дёшево, доступно даже любителю-одиночке.
Читать дальше →
Total votes 170: ↑167 and ↓3 +164
Comments 413

Исключения в Java, Часть I (try-catch-finally)

Reading time 23 min
Views 433K
Это первая часть статьи, посвященной такому языковому механизму Java как исключения (вторая (checked/unchecked) вот). Она имеет вводный характер и рассчитана на начинающих разработчиков или тех, кто только приступает к изучению языка.

Также я веду курс «Scala for Java Developers» на платформе для онлайн-образования udemy.com (аналог Coursera/EdX).

1. Ключевые слова: try, catch, finally, throw, throws
2. Почему используем System.err, а не System.out
3. Компилятор требует вернуть результат (или требует молчать)
4. Нелокальная передача управления (nonlocal control transfer)
5. try + catch (catch — полиморфен)
6. try + catch + catch + ...
7. try + finally
8. try + catch + finally
9. Вложенные try + catch + finally


1. Ключевые слова: try, catch, finally, throw, throws


Механизм исключительных ситуаций в Java поддерживается пятью ключевыми словами
  • try
  • catch
  • finally
  • throw
  • throws


«Магия» (т.е. некоторое поведение никак не отраженное в исходном коде и потому неповторяемое пользователем) исключений #1 заключается в том, что catch, throw, throws можно использовать исключительно с java.lang.Throwable или его потомками.
Читать дальше →
Total votes 67: ↑47 and ↓20 +27
Comments 24

Оптимизация энергопотребления STM32: практическое руководство

Reading time 19 min
Views 53K
Привет, Хабр!

В сети довольно много статей про работу микроконтроллеров STM32 в энергоэффективных устройствах — как правило, это устройства на батарейном питании — однако среди них прискорбно мало разбирающих эту тему за пределами перечисления энергосберегающих режимов и команд SPL/HAL, их включающих (впрочем, та же претензия относится к подавляющему большинству статей про работу с STM32).

Тем временем, в связи с бурным развитием умных домов и всевозможного IoT тема становится всё более актуальной — в таких системах многие компоненты имеют батарейное питание, и при этом от них ожидаются годы непрерывной работы.

Восполнять данный пробел мы будем на примере STM32L1 — контроллера весьма популярного, достаточно экономичного и при этом имеющего некоторые специфические именно для этой серии проблемы. Практически всё сказанное будет также относиться к STM32L0 и STM32L4, ну и в части общих проблем и подходов — к другим контроллерам на ядрах Cortex-M.



Практический результат должен выглядеть примерно так, как на фотографии выше (и да, о применимости мультиметров и других средств измерения к подобным задачам тоже поговорим).
Читать дальше →
Total votes 95: ↑92 and ↓3 +89
Comments 95

Разработка электроники. Выигрышная стратегия технологического стартапа. Часть I

Reading time 13 min
Views 16K
Тема оказалось слишком широка, чтобы уместить её в одну статью. Предлагаю вашему вниманию вступительную часть. В ней пойдёт речь о действиях, которые желательно предпринять ещё до написания технического задания на разработку, чтобы существенно снизить риски неудачи.



Мир вошёл в эпоху “умных вещей”, что породило интерес к технологическим стартапам, который только растёт год от года. На КС они бьют рекорды по сборам, даже несмотря на то, что достойно выполнить свои обязательства удаётся далеко не всем. За десяток с хвостиком лет попыток работы в роли волшебника воплощающего задумки клиентов и вдыхающего в них жизнь мною накоплено много опыта. Безжалостная статистика говорит о том, что 9 из 10 стартапов терпят фиаско. В моей практике это соотношение менее драматично. Возможно потому, что стараюсь не принимать участие в проектах, изначально имеющих большие шансы на провал.

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

О чём пойдёт речь под катом
Не стоит отливать ТЗ в граните.

Сколько денег необходимо для запуска технологического стартапа?
Начинать проверку вашей идеи стоит ещё до начала разработки.
Стратегическая канва — отличный инструмент для проверки конкурентоспособности.
Создание пространства, свободного от конкуренции на реальном примере.
Изучение ближайших аналогов — хорошая практика.
Подбор ключевых компонентов и оценка себестоимости.
Как создать Голубой Океан
Total votes 34: ↑31 and ↓3 +28
Comments 84

Загрузчик с шифрованием для STM32

Reading time 8 min
Views 31K
В данной статье хотел бы написать о своем опыте создания загрузчика для STM32 с шифрованием прошивки. Я являюсь индивидуальным разработчиком, поэтому нижеприведенный код может не соответствовать каким-либо корпоративным стандартам

В процессе работы ставились следующие задачи:

  • Обеспечить обновление прошивки пользователем устройства с SD-карты.
  • Обеспечить контроль целостности прошивки и исключить запись некорректной прошивки в память контроллера.
  • Обеспечить шифрование прошивки для исключения клонирования устройства.

Код писался в Keil uVision с использованием библиотек stdperiph, fatFS и tinyAES. Подопытным микроконтроллером был STM32F103VET6, но код может быть легко адаптирован под другой контроллер STM. Контроль целостности обеспечивается алгоритмом CRC32, контрольная сумма расположена в последних 4 байтах файла с прошивкой.

В статье не описано создание проекта, подключение библиотек, инициализация периферии и прочие тривиальные этапы.
Читать дальше →
Total votes 36: ↑33 and ↓3 +30
Comments 52

Важнейшие заблуждения о разработке игр

Reading time 8 min
Views 59K
Здравствуйте, коллеги.

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


Читать дальше →
Total votes 80: ↑79 and ↓1 +78
Comments 99

Литье под давлением: как это работает

Reading time 10 min
Views 62K

Машина для литья под давлением (иллюстрация компании Rutland Plastics)

При разработке серийного продукта для рынка электроники вам понадобится корпус. И, скорее всего, он будет сделан из пластика. Для макетирования пластиковых деталей и создания прототипа корпуса используется 3D-печать, а для серийного производства — литье под давлением.

Технология литья под давлением — один из важнейших пунктов на пути продукта на рынок электроники. Поэтому независимо от наличия технического образования, вам стоит разобраться в сути этого процесса хотя бы на базовом уровне.
Читать дальше →
Total votes 39: ↑38 and ↓1 +37
Comments 39

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity