После того, как я насмотрелся на посты про кибердеки на Hackaday, я решил переделать в кибердеку один из моих старых проектов похожей направленности, в котором использовалась плата Raspberry Pi. На тот момент разработка кибердеки должна была стать моим самым масштабным экспериментом в области 3D-моделирования. На 3D-печать компонентов этого проекта должно было уйти больше времени, чем уходило до этого на печать частей для других проектов. Расскажу о том, как это было.

Аппаратное обеспечение
Когда я переделывал мой проект, основанный на Raspberry Pi Zero W (ZBS, Zero Boot System), я решил сделать более тонкую версию ещё одного моего проекта портативного компьютера на базе Raspberry Pi. У меня всё получилось. На базе этого проекта я разрабатывал подключаемые модули для Raspberry Pi и программы, рассчитанные на ZBS. В последнее время, из-за увеличения сроков доставки заказов по почте, очень неудобно что-то покупать в интернете, в том числе — сделанные на заказ печатные платы.
Я избавился от корпуса, который использовался в «портативном» проекте на Raspberry Pi и приступил к проектированию нового корпуса. У меня уже была модель корпуса для ZBS. А так как в новом проекте использовалось то же самое аппаратное обеспечение, это означало, что некоторые идеи, заложенные в предыдущую версию корпуса, можно будет использовать и в кибердеке. А именно, моя кибердека должна была состоять из 2 частей. Первая часть — это экран. Вторая — клавиатура. Корпус экрана крепится к корпусу клавиатуры на шарнире, что позволяет складывать устройство.
Тут я использовал шарнир, напоминающий тот, что применяется в камерах GoPro. Я даже заказал винты M5, одним из которых я мог бы скрепить шарнир.

Шарнир
Порты
Я не собирался размещать аккумулятор в том же корпусе, что и экран, как было сделано в проекте ZBS. Это позволило бы сделать корпус тоньше. Там, где раньше был аккумулятор, я разместил HDMI-адаптер, что позволяет, при необходимости, подключать кибердеку к телевизору.

Корпус для экрана, экран, Raspberry Pi Zero и HDMI-адаптер
На боковую поверхность корпуса выведен полноразмерный USB-порт.

USB-порт на боковой поверхности корпуса
Мне, кроме того, хотелось подавать питание на плату и экран с помощью прилично выглядящего кабеля. Для этого я воспользовался разъёмом GX-12, смонтированным на боку корпуса экрана. А провода, идущие к нему от корпуса клавиатуры, поместил в кусок паракорда.

Разъём для подачи питания на экран и Raspberry Pi Zero
Аккумуляторы
У меня имеется много аккумуляторов типоразмера 18650. Поэтому я решил воспользоваться в этом проекте именно ими. Кроме того, это позволило бы кибердеке достаточно долго работать от одной зарядки. Это была моя первая ошибка. Я увлёкся этой идеей, так как понял, что 2 таких аккумулятора имеют такую же длину, что и используемая мной клавиатура. Поэтому проектировать корпус клавиатуры, где размещались и аккумуляторы, я начал именно с аккумуляторного отсека.
У меня уже был спроектированный корпус для аккумуляторов типоразмера 18650, в котором использовались пружинный и пластинчатый контакты, которые обычно применяются в корпусах для AA-батареек. Я взял этот корпус и, пользуясь Freecad, интегрировал его в корпус клавиатуры. А именно, из двух корпусов, рассчитанных на один аккумулятор, я сделал один корпус, рассчитанный на два аккумулятора. От одного корпуса я отрезал ту часть, где был «+» аккумулятора, от другого — ту часть, где был «-». То, что получилось, выглядело очень хорошо, но я, по глупости, сразу не понял, что в таком корпусе аккумуляторы соединяются последовательно, а не параллельно. К счастью, я осознал это до того, как успел подключить питание к Raspberry Pi. Но к тому моменту у меня уже был готовый корпус, который мне не хотелось перерисовывать и перепечатывать (на печать ушло 8 часов 45 минут). Тут мне повезло. В аккумуляторном отсеке было достаточно свободного пространства, я использовал аккумуляторы с плоской верхушкой. Поэтому мне удалось напечатать разделительную перегородку и, прибегнув к паяльнику, сделать так, чтобы «плюс» одного аккумулятора не касался бы «минуса» другого. В результате мне удалось сохранить исходный корпус и соединить аккумуляторы параллельно.

Соединительная перегородка между аккумуляторами
Я, пользуясь тем, что аккумуляторы имеют цилиндрическую форму, применил жёсткие медные провода, которые удалось разместить около аккумуляторов.

Аккумуляторы, соединённые параллельно, и подача питания на Raspberry Pi
Крышка для аккумуляторного отсека
Я надеялся на то, что если мне не хватит места в аккумуляторном отсеке, я смогу воспользоваться свободным пространством в крышке этого отсека. Но у меня возникла проблема, связанная с крышкой. А именно, когда я проектировал шарнир в стиле GoPro, я проводил измерения, ориентируясь на экран, рассчитывая на то, чтобы его можно было бы удобно закрывать, и чтобы в закрытом состоянии он располагался бы параллельно корпусу клавиатуры. Но я не обратил внимания на то, что выводы GPIO будут упираться в корпус. Правда, я, что оказалось очень кстати, воспользовался округлёнными результатами измерений, сделав так для того чтобы экрану точно хватило бы места. Но на 1 миллиметр я, всё же, ошибся. При этом я сделал крышку для аккумуляторного отсека толщиной в 2 миллиметра. В итоге я нашёл этот недостающий миллиметр, уменьшив толщину части крышки.
Часть крышки имеет толщину 2 миллиметра, а именно — то её место, через которое идут провода, питающие Raspberry Pi. Я собирался закрепить их кабельной стяжкой. К тому же, выступающая область на крышке сделала внешний вид устройства интереснее.
Клавиатура

Корпус клавиатуры
Оснастить кибердеку клавиатурой было совсем просто. В предыдущем проекте я использовал магнитное крепление. Тут я собирался поступить так же, но магниты я утопил в корпус, а раньше они были закреплены на его поверхности. Кроме того, мне надо было предусмотреть отверстие в боковой части корпуса. Оно давало доступ к MicroUSB-порту для зарядки клавиатуры и к кнопке включения-выключения. Правда, с корпусом клавиатуры возникла ещё одна проблема. А именно, его острые края впивались в ладони в том случае, если с устройством приходилось работать, держа его в руках. Но стенки корпуса были сделаны цельными. Поэтому я смог скруглить углы, воспользовавшись напильником.
Ушко для шнурка
Я сделал на корпусе ушко для шнурка, которое позволило бы носить кибердеку на шее. Кроме того, к нему можно что-нибудь прицепить, в результате вся конструкция выглядела бы интереснее.

Ушко для шнурка
Итоги
Вот файлы для 3D-печати частей корпуса кибердеки.
Обзор аппаратной части кибердеки
Матрица!
Планируете сделать себе кибердеку?

Автор: ru_vds