Как стать автором
Обновить
1
0

Схемотехник

Отправить сообщение

Сертификаты Let's Encrypt и ACME вообще во внутренней сети

Время на прочтение6 мин
Количество просмотров17K

Обычно внутри корпоративной сети нынче полно всяких приложений, и хотелось бы чтобы они работали по SSL. Можно, конечно, поднять свой УЦ, раздать сертификаты, прописать пользователям свой корневой сертификат - и это будет работать. А можно просто воспользоваться сервисом Let's Encrypt, раздав его сертификаты своим внутренним серверам, которые не видны из Интернета, причем сделать это просто и с минимумом трудозатрат на поддержку.

Читать далее
Всего голосов 12: ↑12 и ↓0+12
Комментарии78

Циклоидный редуктор + BLDC мотор своими руками

Уровень сложностиСложный
Время на прочтение9 мин
Количество просмотров16K

Всем привет! Эта статья открывает собой серию статей по разработке манипулятора. Тут я попробую рассказать о циклоидном редукторе и зачем он вообще мне понадобился. Разумеется, мы проведём его расчёт и воплотим его в физическое представление при помощи PLA пластика. Ну и как бонус соберём из хлама BLDC мотор для тестирования этого редуктора. Погнали.
Читать дальше →
Всего голосов 102: ↑102 и ↓0+102
Комментарии111

Установка сервера 1С, Postgresql и терминального сервера для клиентских приложений 1С на ОС Fedora Linux

Время на прочтение36 мин
Количество просмотров42K

На настоящий момент фирма 1С предоставляет возможность установки своего основного программного продукта на ОС Windows, Linux и MacOS (только клиентского приложения).

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

Однако, сама фирма 1С в своей документации и справочных материалах довольно прозрачно намекает, что ОС Windows далеко не единственный вариант установки ПО, в особенности серверной части и что ОС Linux гораздо более предпочтительна в качестве серверной ОС.

На портале 1С мы можем найти разные наборы установочных пакетов для 64-битных и 32-битных систем, для систем из семейства Linux, основанных на deb-пакетах (для системы Debian и её производных — Ubuntu, Mint и других) и основанных на rpm-пакетах (для ОС RedHat и её производных — CentOS, Suse, Fedora и других).

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

Для того, чтобы установить систему 1С в клиент-серверном варианте, требуется установка не только самого сервера 1С, но и сервера СУБД. Начнём установку именно с этого, так как без работоспособной базы данных устанавливать сервер 1С не имеет смысла.

Вариантов для выбора СУБД весьма немного. Система 1С может работать всего лишь с 4-мя различными СУБД: Microsoft SQL Server, PostgreSQL, IBM DB2 и Oracle Database. Все эти СУБД могут быть установлены на Linux, однако в полноценном варианте Microsoft SQL Server, IBM DB2 и Oracle Database являются платными коммерческими продуктами с немалой стоимостью. А на настоящий момент все эти три корпорации с РФ не работают (Microsoft, IBM, Oracle). У PostgreSQL тоже есть платная версия, но той версии, которая распространяется как свободный и открытый программный продукт, вполне достаточно для работы с сервером 1С. Поэтому при использовании свободной ОС Linux выбор в первую очередь, конечно, падает на PostgreSQL.

Читать далее
Всего голосов 12: ↑12 и ↓0+12
Комментарии16

Переносим свою картину мира в чат-бота на базе GPT-3

Время на прочтение4 мин
Количество просмотров46K

Думаю, все уже наслышаны о потрясающих возможностях ChatGPT и GPT-3, многие уже вдоволь наигрались с ними, а новые стартапы на их основе льются на нас каждый проливным дождём! Возможности ChatGPT в решении некоторых текстовых задач потрясают, порой кажется, что имеешь дело с настоящим разумом.

У меня возникла идея - что если попробовать доучить сеть так, чтобы она имитировала картину мира определенного человека? (Да, снова Черное Зеркало). Классический подход с pre-prompt для этого не подходит, так как хочется заложить в сеть побольше знаний (а также реально поменять веса связей), поэтому будем использовать fine-tune (дообучение на небольшом датасете и небольшом числе итераций). Такая опция доступна пользователям openAI за небольшую плату ($0.5-1 в моих примерах).

В этой статье я покажу как можно обучить GPT-3 (в версии davinchi-003) на своей картине мира и засунуть её внутрь телеграм-бота, потратив на всё всего несколько долларов.

Код бота доступен в репозитарии.

Читать далее
Всего голосов 43: ↑42 и ↓1+41
Комментарии31

Дельта компрессия и квантизация объектов в C#

Время на прочтение11 мин
Количество просмотров12K

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

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

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

Читать далее
Всего голосов 37: ↑36 и ↓1+35
Комментарии18

Как упростить жизнь за 312 коротких шагов: проектируем GraphQL API в микросервисной архитектуре

Время на прочтение9 мин
Количество просмотров10K

Звук – HiFi-сервис с большой командой инженеров. Мы используем передовые технологии и современный стек, и экспериментируем, чтобы решать сложные, нестандартные задачи. Одна из технологий  – GraphQL.

Эта статья изначально создавалась как гайд по работе с GraphQL для инженеров Звука (системные аналитики, разработчики, QA). При этом статья может быть полезна всем, кто никогда не работал с GraphQL, но очень хочет понять, зачем он может быть нужен, и как поможет решить задачу вашего бизнеса.

Читать далее
Всего голосов 29: ↑28 и ↓1+27
Комментарии36

Отправка и прием данных неизвестной длины по UART через DMA в freeRTOS на STM32 с использованием LL

Время на прочтение5 мин
Количество просмотров25K

В этой статье я расскажу о том, как реализовать работу с UART через DMA в freeRTOS.

Приступим!
Всего голосов 12: ↑9 и ↓3+6
Комментарии7

Восстановление 4-летнего автомобильного AGM аккумулятора

Время на прочтение5 мин
Количество просмотров70K
В декабре 2019 в лабораторию прибыл аккумулятор Volvo AGM V022A 70А*ч, производство 40-я неделя 2015 года, т.е. 4 года назад. Автомобиль долгое время простаивал, АКБ соответственно разрядилась, после чего был произведён обычный подзаряд, затем автомобилем пользовались.
Осторожно, много картинок и медиа
Всего голосов 37: ↑37 и ↓0+37
Комментарии7

Тинькофф, Я вас люблю и ненавижу…

Время на прочтение15 мин
Количество просмотров58K

В 21 веке, кто-то боится экосистем, кто-то их ненавидит, кто-то боготворит. Каждому предстоит самому делать выбор готов ли он жертвовать безопасностью ради удобства, складывая все яйца в одну корзину. Я пользуюсь Тинькофф уже несколько лет. Начал со счёта для ИП, как андроид разработчик, попробовал многие сервисы для физических лиц... И хотел бы рассказать о том, как банк сам не даёт себя любить. Ну серьёзно, в доме 31 градус - работать просто невозможно, почему бы не осчастливить Хабр очередным личным опытом?

Читать без соблюдения банковской тайны
Всего голосов 110: ↑101 и ↓9+92
Комментарии175

Реализация PPPOS на stm32f4-discovery

Время на прочтение14 мин
Количество просмотров14K
Однажды передо мной возникла задача обеспечить выход в сеть Интернет на STM32 имея для этого только COM порт. Для решения этой задачи мне понадобился PPP, или, еcли быть точным, PPPoS (англ. Point-to-Point Protocol over Serial — один из способов реализации PPP, используется при подключении через COM-порт).

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

Статья описывает создание проекта для System Workbench for STM32 с нуля. Показывает пример работы с UART. Есть примеры кода для реализации PPP. Ну и конечно, пример отправки сообщения на соседний компьютер.
Читать дальше →
Всего голосов 30: ↑30 и ↓0+30
Комментарии9

Мультисенсорный беспроводной датчик с E-Ink дисплеем

Время на прочтение4 мин
Количество просмотров10K
Приветствую всех читателей Хабра и особенно читателей раздела «DIY или Сделай сам»! В сегодняшней статье я расскажу о своем очередном DIY проекте из серии устройств с дисплеями на электронных чернилах(e-ink). Устройство о котором пойдет речь это беспроводной мультисенсорный датчик с e-paper дисплеем 2.13 дюймов. На датчик можно установить сенсор температуры и влажности SHT21, HTU21D, SI7021, сенсор температуры влажности и давления BME280, сенсор атмосферного давления BMP280, сенсор освещенности MAX44009. Датчик работает от одной батарейки CR2450. Но ничего не мешает напаять на датчик держатель под батарейки CR2430 или CR2477.


Всего голосов 54: ↑54 и ↓0+54
Комментарии19

Переходим с STM32F103 на К1986ВЕ92QI. Или первое знакомство с российским микроконтроллером

Время на прочтение8 мин
Количество просмотров171K

Введение


В преддверии нового года я, как и многие россияне, активно следил за состоянием зарубежной валюты. Но не просто из-за собственного интереса, а из-за того, что на тот момент заканчивал свое устройство, которое требовалось показать на школьной и районной конференции. Так как в названии работы было такое слово как «бюджетное», то приходилось в презентации указывать стоимость каждого компонента, вплоть до резисторов и перемычек. Изначально, когда доллар стоил порядка 30 рублей, устройство и вправду было бюджетным. Как при домашней сборке, так и при конвейерной. Но когда цена доллара перевалила за 100 рублей, я решил, нужно искать альтернативу зарубежным компонентам.

К этому моменту уже как несколько месяцев изучал работу микроконтроллеров STM32F100 и STM32F103, применяя их на практике в презентационном устройстве. От таких гигантов, как STM32F429, мне пришлось отказаться. Так как стоимость в 1800 рублей за корпус является заоблачной для «бюджетного» устройства, функционал которого только начал превосходить возможности AVR Atmega32.
Читать дальше →
Всего голосов 81: ↑72 и ↓9+63
Комментарии56

Open Source синтез речи SOVA

Время на прочтение9 мин
Количество просмотров21K

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



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

Всего голосов 31: ↑30 и ↓1+29
Комментарии24

Фильтр Калмана

Время на прочтение10 мин
Количество просмотров417K


В интернете, в том числе и на хабре, можно найти много информации про фильтр Калмана. Но тяжело найти легкоперевариваемый вывод самих формул. Без вывода вся эта наука воспринимается как некое шаманство, формулы выглядят как безликий набор символов, а главное, многие простые утверждения, лежащие на поверхности теории, оказываются за пределами понимания. Целью этой статьи будет рассказать об этом фильтре на как можно более доступном языке.
Фильтр Калмана — это мощнейший инструмент фильтрации данных. Основной его принцип состоит в том, что при фильтрации используется информация о физике самого явления. Скажем, если вы фильтруете данные со спидометра машины, то инерционность машины дает вам право воспринимать слишком быстрые скачки скорости как ошибку измерения. Фильтр Калмана интересен тем, что в каком-то смысле, это самый лучший фильтр. Подробнее обсудим ниже, что конкретно означают слова «самый лучший». В конце статьи я покажу, что во многих случаях формулы можно до такой степени упростить, что от них почти ничего и не останется.
Читать дальше →
Всего голосов 178: ↑173 и ↓5+168
Комментарии84

Фильтр Калмана — это легко

Время на прочтение18 мин
Количество просмотров73K


Много людей, в первый раз сталкивающихся в работе с датчиками, склонны считать, что получаемые показания — это точные значения. Некоторые вспоминают, что в показаниях всегда есть погрешности и ошибки. Чтобы ошибки в измерениях не приводили к ошибкам в функционировании системы в целом, данные датчиков необходимо обрабатывать. На ум сразу приходит словосочетание “фильтр Калмана”. Но слава этого “страшного” алгоритма, малопонятные формулы и разнообразие используемых обозначений отпугивают разработчиков. Постараемся разобраться с ним на практическом примере.
Читать дальше →
Всего голосов 73: ↑71 и ↓2+69
Комментарии34

Спутниковая связь против экологических катастроф? Решение дешевле и проще чем вы думаете

Время на прочтение11 мин
Количество просмотров12K


В одной из прошлых своих статей я делал обзор микроконтроллеров, а сегодня речь пойдёт о модуле, который поможет им спасти мир. Ну, во всяком случае, от экологических катастроф. Хитроумные датчики на основе микроконтроллеров способны сегодня на многое. Они умеют контролировать уровень воды, определять степень её загрязнения, распознавать подозрительный шум в турбинах, оценивать малейшие отклонения ориентации и даже опасный уровень напряжения в конструкциях зданий и сооружений… На основе результатов их работы можно с большой вероятностью предсказать нарастающую опасность возникновения экологической катастрофы. Есть, однако, серьёзная проблема — катастрофы имеют обыкновение происходить неожиданно и зарождаться в отдалённых безлюдных местах, порой не охваченных даже сотовой связью. Передать сигнал тревоги в таких условиях бывает совсем не просто. На помощь в таких случаях приходит спутниковая связь. “Но ведь это очень сложно и дорого” — скажете вы.

Года три назад я считал так же, пока не столкнулся в ходе одного из своих проектов с элегантным и недорогим решением проблемы. Оказывается уже давно существует достаточно доступный модуль, на основе которого можно создать автономный спутниковый передатчик. Одного комплекта батареек будет достаточно для поддержания устройства в работоспособном состоянии в течении длительного периода времени — от нескольких месяцев до нескольких лет.
Если есть желание познакомиться с темой поближе и не жалко потратить десяток минут своего драгоценного времени — милости прошу под кат.
Как это работает?
Всего голосов 34: ↑33 и ↓1+32
Комментарии50

STM32F3xx + FreeRTOS. Modbus RTU с аппаратным RS485 и CRC без таймеров и семафоров

Время на прочтение9 мин
Количество просмотров25K
Всем привет! Относительно недавно, закончив ВУЗ, я попал в небольшую компанию, которая занималась разработкой электроники. Одна из первых задач с которой я столкнулся — необходимость в реализации Modbus RTU Slave протокола с использованием STM32. С грехом пополам я её тогда написал, однако этот протокол начал встречаться мне из проекта в проект и я решил зарефакторить и оптимизировать либу с использованием FreeRTOS.
Читать дальше →
Всего голосов 34: ↑33 и ↓1+32
Комментарии24

Самодельный лидар: OpenTOFLidar

Время на прочтение27 мин
Количество просмотров68K

В этой статье я хочу рассказать про свой проект импульсного (TOF) Open Source лидара — о том как я его делал, и каких результатов удалось добиться.
top-picture

Читать дальше →
Всего голосов 136: ↑136 и ↓0+136
Комментарии66

Локальный прокси-сервер для фильтрации браузерного трафика

Время на прочтение15 мин
Количество просмотров22K

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


Первоначально была задача упростить посещение сайтов через медленное (около 5-10кбайт/с с лагами) подключение. Тут два основных направления: 1) вырезать всё что не нужно (в первую очередь рекламу), и 2) закешировать всё что можно закешировать без особого вреда для функционала посещаемых сайтов, даже когда сами сайты не разрешают кеширование в http-заголовках, а то и явно препятствуют ему, дописывая после урлов статических файлов знак вопроса с рандомным числом.


Предупреждение: реализация, описанная ниже, делалась для Linux-а, вроде бы работает на других *nix, но даже компиляция её на винде не рассматривалась (хотя возможность адаптировать, конечно, есть).

Читать дальше →
Всего голосов 18: ↑18 и ↓0+18
Комментарии17

Иллюстрированное руководство по OAuth и OpenID Connect

Время на прочтение7 мин
Количество просмотров79K
Прим. перев.: В этом замечательном материале компании Okta просто и наглядно рассказывается о принципах работы OAuth и OIDC (OpenID Connect). Эти знания будут полезны разработчикам, системным администраторам и даже «обычным пользователям» популярных веб-приложений, которые скорее всего тоже обмениваются конфиденциальными данными с другими сервисами.

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


«Предоставьте свою банковскую учётку». — «Обещаем, что с паролем и деньгами все будет в порядке. Вот прям честно-пречестно!» *хи-хи*

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

Сегодня имеется единый стандарт, позволяющий одному сервису безопасно воспользоваться данными другого. К сожалению, подобные стандарты используют массу жаргонизмов и терминов, что усложняет их понимание. Цель этого материала — с помощью простых иллюстраций объяснить, как они работают (Думаете, что мои рисунки напоминают детскую мазню? Ну и ладно!).

Всего голосов 42: ↑40 и ↓2+38
Комментарии3
1

Информация

В рейтинге
Не участвует
Откуда
Северодвинск, Архангельская обл., Россия
Дата рождения
Зарегистрирован
Активность