Обновить
128K+
1 025,27
Рейтинг
4 325
Подписчики
Сначала показывать

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

Уровень сложностиСредний
Время на прочтение14 мин
Охват и читатели11K

Что такое световое перо? Предок современного стилуса?

Хороший вопрос. Шестьдесят лет назад операторы ЭВМ пользовались им точно так же, как мы сегодня стилусом: тыкали в экран, чтобы отметить самолёт-нарушитель, набросать чертеж детали для будущего самосвала или поставить точку на графике. На первый взгляд — два поколения одной и той же идеи.

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

Еще вы узнаете, почему на современных мониторах классическое световое перо бесполезно. И, скорее всего, удивитесь: есть шанс, что вы сами держали его в руках и даже не подозревали об этом.

Читать далее

Ещё один способ поворота и удержания угла роботами: сельсины

Время на прочтение7 мин
Охват и читатели10K

Что мы знаем о повороте на определённый угол и его удержании в робототехнических системах? 

Думается, что на данный момент, мы все настолько сильно подсели на разнообразные цифровые устройства, алгоритмы и принципы, что нам (наверное, что даже и большинству), зачастую, даже сложно себе представить, что подобная задача может быть решена и кардинально иным способом! :-)  

Тем не менее, в истории существовали (и даже в данный момент существуют!) целый класс абсолютно иных аналоговых устройств, который вполне себе успешно справляется с тем же самым вопросом — и называются подобные устройства «сельсины»…

Читать далее

sizeof(Mutex<()>) упал с 40 байт до 5: что внутри std::sync::Mutex после Rust 1.62

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели9.7K

sizeof(Mutex<()>) в Rust 1.61 на Linux был 40 байт. В Rust 1.62 он стал 5 (точнее, 8 с учётом выравнивания, но базовый overhead 5).

За уменьшением размера в восемь раз стоит полная переписка стандартного Mutex с pthread на futex напрямую, ускорение uncontended locks в 2-3 раза, и десятилетие, которое стандартный Mutex провёл в роли «возьми parking_lot, std::sync::Mutex медленный».

Сегодня заглянем под капот всей этой темы, разберём, что лежит внутри std::sync::Mutex после 1.62, какой алгоритм там используется, почему он на самом деле быстрее pthread, как устроен fairness (точнее, его отсутствие), зачем нужен poisoning, и в каких случаях parking_lot всё ещё имеет смысл тащить в зависимости. Заодно вернёмся к моей старой async-статье и поясним конкретнее, почему в async-задачах std::sync::Mutex это проблема, и при чём тут вообще futex.

Читать далее

Обзор и схемотехническое ревью платы TZT RK-ZYNQ7020-F с FMC LPC разъемом

Уровень сложностиСредний
Время на прочтение86 мин
Охват и читатели11K

Я давно хотел купить плату с Zynq-7020, да такую, чтобы на ней был FMC LPC разъем на который, к примеру, можно было бы установить плату c AD9361 или множеством портов Ethernet, или еще какой-нибудь вариант. И на просторах китайского Aliexpress мне попалась одна такая - TZT RK-ZYNQ7020-F версии 1.1. Я не долго думая сразу ее прикупил и решил что это как раз то, что нужно. И в этой статье хотел бы поделиться своими впечатлениями и обзором того, что на этой плате любезно нам предоставил разработчик. Это будет обзор в несколько ином ключе, без пересказа schematic, а в виде подробного инженерного обзора по подсистемам. Сначала рассмотрим комплектацию, стоимость, затем архитектуру платы, ее внешний вид и что на ней есть. Потом заглянем в питание, reset, clocking и boot. Затем память: DDR3, QSPI, eMMC, microSD. Далее интерфейсы PS: UART, USB, Ethernet, I2C, интерфейсы PL и расширения: FMC, 40-pin, HDMI, MIPI, CAN, RS485, LCD. И в конце - общее впечатление, риски и выводы. Поехали!

Всем интересующимся - добро пожаловать под кат!

Читать далее

Ускоритель травления и проявки печатных плат на дому — простые самодельные установки «ротоспрей»

Время на прочтение7 мин
Охват и читатели13K

PCB-шник

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

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

Но что же делать со скоростью? Или, вот ещё проблема: зачастую (а особенно при изготовлении относительно габаритных плат) требуется также запастись и относительно большим количеством травящего раствора. 

После чего начинается «задумчивое потряхивание платы в этом растворе, глядя в угол комнаты» :-B, — что безусловно отвлекает от других дел и, к тому же, занимает не сказать, чтобы уж совсем маленькое время… 

Конечно, это всё не является проблемой, если делать печатные платы вам приходится раз от разу, и изредка… Но, всё существенно усложняется, если попытаться делать платы хотя бы малыми сериями — здесь уже любая эффективность будет ко двору, так как за рабочий день их не натрясёшься… 

Тем не менее, есть один интересный способ, с весьма широкими возможностями, который, наверняка, далеко не каждому попадался на глаза! ;-) 

И способ этот — сборка простых установок типа «ротоспрей»…

Читать далее

Почему алмаз твердый, но хрупкий

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели14K

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

Фразу из той статьи я запомнил дословно: «Он перепутал твердость с хрупкостью».

Я перечитал ее несколько раз. А разве это не одно и то же? К сожалению, в моем детстве не было Интернета и тогда я не смог найти ответа на этот вопрос. 

Но, спустя годы, я снова вспомнил эту историю и мне стало интересно с ней разобраться. Я погрузился в изучение вопроса. Почему же алмаз так легко разбить, ведь если что-то твердое — оно же должно быть и прочным? Логично ведь.

Нет, не логично.

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

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

Читать далее

От пламени прошлого — до сверхсовременных дальнобойных фонарей: история света, часть-2

Время на прочтение7 мин
Охват и читатели12K

Project 326

Продолжение статьи (начало ТУТ).

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

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

Читать далее

От пламени прошлого — до сверхсовременных дальнобойных фонарей: история света, часть-1

Время на прочтение9 мин
Охват и читатели11K

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

Исторически, человек всё более и более уступал в этом истинным представителям дикой природы: человеческое зрение не позволяло ему видеть в темноте также уверенно, как это делают многие дикие звери; обоняние не позволяло заранее почуять опасность; отсутствие больших и подвижных ушных раковин — также не могло потягаться с дикими зверями… 

Думается, что именно поэтому, активная деятельность человека всё более и более сосредотачивалось на светлом времени суток, а затем, с момента эпохального события (или событий), затерявшегося в веках — открытия огня, человек понял, что теперь, всё в его руках: «день» может наступить в любое время суток, равно как и безопасность!  

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

Читать далее

Клод Шеннон. Информатика на максималках

Уровень сложностиСредний
Время на прочтение20 мин
Охват и читатели12K

Вопрос на засыпку: кто придумал бит? Если вы ответите «Клод Шеннон», то будете неправы, бит он не придумывал. Но без Шеннона сухая концепция его коллеги по Bell Джона Тьюки вряд ли бы обрела такую популярность и легла в основу современного мира.

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

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

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

Читать далее

Zynq 7000. Переносим I2C Master Controller. Работа над ошибками и утилиты userspace

Уровень сложностиСредний
Время на прочтение81 мин
Охват и читатели6.7K

В прошлой статье мы собрали готовый образ Linux и запустили I2C Master Controller который живет в ПЛИС и управляется драйвером предоставляющим в ОС доступ к нему как типовому I2C-контроллеру. В этой, заключительной части из общей серии статей, я хотел бы филигранно отшлифовать все мелкие недочеты и привести примеры утилит, которые могли бы отправлять нужные нам данные на I2C OLED-дисплей SSD1306, например температуру кристалла, время или что-нибудь еще. 

Всем кому интересна тема - го под кат! :)

Читать далее

Размагничивание кораблей: мины, физика и Курчатов. Часть 2

Уровень сложностиСредний
Время на прочтение14 мин
Охват и читатели13K

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

Читать далее

Про готовые сборки микроконтроллер+motor shield для хобби

Время на прочтение7 мин
Охват и читатели14K

Не знаю как для вас, но мне всегда казалось очень странным, что, любой энтузиаст, желающий собирать какие-либо самоделки на базе микроконтроллеров, всегда сталкивается с весьма странной проблемой: как подключить двигатели наиболее простым способом?!  

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

А двигатели? А двигатели в пролёте в прокруте (на первый взгляд)…:-B 

Ниже я рассмотрел пару решений, которые нашёл для себя в разные моменты времени в прошлом — возможно, они, в чём-то, будут полезны и для вас! ;-) 

Читать далее

Размагничивание кораблей: мины, физика и Курчатов. Часть 1

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели16K

Спросите случайного человека, с чем у него ассоциируется фигура Игоря Курчатова. Скорее всего, вспомнят советскую ядерную бомбу. Кто-то добавит про знаменитую бородку или аэропорт Челябинска (Ииииигорь!). На этом, как правило, всё.

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

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

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

Читать далее

Как биология и особенности медицинского учета издеваются над программистами

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели21K


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

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

Читать далее

Ближайшие события

Позвонить бесплатно: история взлома аналоговой телефонии. Часть 2

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели17K

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

Читать далее

«Мучаем кубик»: параметрическое проектирование и анализ нагруженности 3D модели (для FDM 3D печати) во FreeCAD

Время на прочтение7 мин
Охват и читатели13K

В одной из прошлых статей мы рассмотрели такой интересную тему, как анализ нагруженности 3d модели, производимый с помощью open source программы PrePoMax, где для себя отметили, что подобный подход, с использованием внешних модулей, в значительной степени развязывает руки, позволяя производить моделирование в любом удобном инженерном CAD-е, даже том, в котором не реализован анализ нагруженности. 

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

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

Для чего всё это вообще может быть нужно: основной целью всего этого является прикидка — а выдержит ли 3d модель ту нагрузку, которая будет к ней прилагаться в дальнейшем? 

Далее мы рассмотрим самый простой и доступный в понимании подход, который, на мой взгляд, имеет смысл с точки зрения его применения при анализе моделей для 3d печати, в домашнем техническом хобби творчестве…

Читать далее

Настроечная таблица. Что это, как работало и зачем пииииииииииииии

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели16K

— У меня вчера ночью по телеку что-то дикое показывали. Мат не прекращался.

— Серьезно?

— Ага. Слов вообще не было, только пииии. И сетка цветная.

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

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

Читать далее

Можно ли «посмотреть за угол»? Физика отвечает: да, конечно, никаких проблем

Время на прочтение8 мин
Охват и читатели13K

История эта началась достаточно давно, ещё в XIX веке, начавшись с одного из переломных моментов, изменивших мнение учёных о природе света, и, много позже, уже в наше время, приведя к поразительным результатам, полностью подтверждающим сказанное в заголовке статьи… ;-) 

Читать далее

Позвонить бесплатно: история взлома аналоговой телефонии. Часть 1

Уровень сложностиСредний
Время на прочтение14 мин
Охват и читатели12K

Фрикинг — это слегка устаревший термин, который означает взлом телефонных сетей для бесплатных звонков. Главным образом фрикинг относят к взлому аналоговых сетей, которых ныне почти не осталось, а потому термин стал неактуален. Но. Но в США 1960–1980-х годов это была целая культура, сравниваемая с сегодняшними хакерами. А в позднем СССР масштаб подобных взломов стал общенациональной проблемой.

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

Читать далее

Zynq 7000. Переносим I²C Master Controller.  Linux + buildroot + kernel driver

Уровень сложностиСредний
Время на прочтение131 мин
Охват и читатели12K

Теперь пора переносить проект под управление ОС Linux. В этой статье мы подробно вопросы разберем как пройти весь путь от FSBL до вывода системной консоли на OLED SSD1306. Для этого нам потребуется собрать все необходимые загрузочные артефакты: FSBL c отладкой для информативной загрузки, DTS, out-of-tree драйвер для I2C Controller, ядро и rootfs, соберем uImage, потом слепим BOOT.BIN и загрузим его на SD-карту.

В общем, всем интересующимся добро пожаловать под кат!

Читать далее
1
23 ...

Информация

Сайт
beget.com
Дата регистрации
Дата основания
Численность
201–500 человек
Местоположение
Россия