Кто хочет порисовать в OpenScad и внести посильный вклад в опенсорсы?
Все равно не понимаю зачем такие вещи делать для кастомайзера.
Профиль он для все один. 😃
Расстояния между профилями разное (между крепежными отверстиями). Блок с выключателем разный (с ушами и без). Для головы - диаметры магнитов разные. И т.п.
А еще это нравится лично мне и я готов на это выделить какую-то денежку. Чтобы получился качественный “продукт”. То что есть сейчас, называется “на халяву и уксус сладок”. Я предпочитаю более основательный подход (на гитхабе можно посмотреть).
Ну и разобраться с openscad и кастомайзером тоже интересно.
А у меня грусть печаль… поставил внешнюю видяху чтобы солид лучше работал, теперь опенскад после F6 вылетает нафик. 😦
То есть рисовать могу, а сохранять stl нет. 😦
(прошу простить за частичный оффтоп)
- Проверить openGL драйвера: это одно из первых, что опенскаду может не понравиться;
- Воткнуть опенскад на другую машину или на виртуальную машину.
- Ещё есть openjscad.org
Да пофик на него. Я на солид перешел, опенскад для изменения старых проектов разве что. А вот за веб спасибо.
Окей, возможно я хочу слишком многого 😃 . Побьем задачу на части. Пусть будет нарисовано в чем угодно, а в OpenSCAD перегоню сам.
Нужен просто грамотный конструктор с опытом промдизайна. В смысле, которой сам знает что такое эргономика, что узлы 220 вольт желательно закрывать целиком, и про специфику 3d-печати.
ИМХО нормальные модели под обозначеные задачи может сделать лишь тот, кто для себя такие же задачи решает и реально собирает такой-же принтер. Даже у опытных моделлеров бывают косяки и требуется доработка после пары испорченых прототипов.
Модели, нарисованые абстрактно - почти наверняка получатся сырыми: тому, что решит реально напечатать и пустить в дело придётся дебажить это самому, выкинув в мусорку несколько косячных билдов.
Когда появится грамотный конструктор, все нюансы я обсужу с ним лично. Рассуждать просто так - не вижу смысла.
Фотачки бокса под выключатель:
- На морде 6 (!) винтов. Грёбаный стыд…
- Крепление винтами 35мм. Экзотика и целиться неудобно.
- Контакты сетевого гнезда подходят подозрительно близко к направляющим. Автор наверное бессмертный. Паять такое сцыкотно, а если делать изолированные клеммы как на фотке - провода между направляющих выступают.
- Ну и общий внешний вид как у табуретки.
Предложение порисовать в чем угодно - в силе.
Вот вам не спится спокойно. 😃
Вот накидал по быстрому на переменных. могут быть ошибки. усложнять условиями не стал.
$fn=50;
mount_distance=15;
connector_x=48;
connector_y=28;
connector_z=30;
connector_screw=6;
connector_space_x=5;
connector_space_y=5;
curve=5;
mount_row=10; //смещение от центра для винтов крепления под профиль 2040
module top(){
difference(){
hull(){
translate([-connector_x/2-connector_space_x-mount_distance,mount_row,0]) cylinder(d=12, h=4);
translate([connector_x/2+connector_space_x+mount_distance,mount_row,0]) cylinder(d=12, h=4);
translate([-connector_x/2-connector_space_x-mount_distance,-mount_row,0]) cylinder(d=12, h=4);
translate([connector_x/2+connector_space_x+mount_distance,-mount_row,0]) cylinder(d=12, h=4);
translate([connector_x/2+connector_space_x,-connector_y/2-connector_screw-connector_space_y,0]) cylinder(d=curve, h=1);
translate([connector_x/2+connector_space_x,connector_y/2+connector_screw+connector_space_y,0]) cylinder(d=curve, h=1);
translate([-connector_x/2-connector_space_x,-connector_y/2-connector_screw-connector_space_y,0]) cylinder(d=curve, h=1);
translate([-connector_x/2-connector_space_x,connector_y/2+connector_screw+connector_space_y,0]) cylinder(d=curve, h=1);
translate([connector_x/2+connector_space_x,-connector_y/2-connector_screw-connector_space_y,connector_z]) sphere(d=curve);
translate([connector_x/2+connector_space_x,connector_y/2+connector_screw+connector_space_y,connector_z]) sphere(d=curve);
translate([-connector_x/2-connector_space_x,-connector_y/2-connector_screw-connector_space_y,connector_z]) sphere(d=curve);
translate([-connector_x/2-connector_space_x,connector_y/2+connector_screw+connector_space_y,connector_z]) sphere(d=curve);
}
translate([-connector_x/2-connector_space_x-mount_distance,mount_row,-1]) cylinder(d=3, h=connector_z+curve);
translate([connector_x/2+connector_space_x+mount_distance,mount_row,-1]) cylinder(d=3, h=connector_z+curve);
translate([-connector_x/2-connector_space_x-mount_distance,-mount_row,-1]) cylinder(d=3, h=connector_z+curve);
translate([connector_x/2+connector_space_x+mount_distance,-mount_row,-1]) cylinder(d=3, h=connector_z+curve);
translate([-connector_x/2-connector_space_x-mount_distance,mount_row,3]) cylinder(d=7, h=connector_z+curve);
translate([connector_x/2+connector_space_x+mount_distance,mount_row,3]) cylinder(d=7, h=connector_z+curve);
translate([-connector_x/2-connector_space_x-mount_distance,-mount_row,3]) cylinder(d=7, h=connector_z+curve);
translate([connector_x/2+connector_space_x+mount_distance,-mount_row,3]) cylinder(d=7, h=connector_z+curve);
translate([-connector_x/2,-connector_y/2,-1]) cube([connector_x,connector_y,connector_z+curve]);
translate([-connector_x/2-connector_space_x,-connector_y/2-connector_screw-connector_space_y,-1]) cube([connector_x+connector_space_x*2,connector_y+connector_screw*2+connector_space_y*2,connector_z]);
if (connector_screw>0) {
translate([0,-connector_y/2-connector_screw,-1]) cylinder(d=3, h=connector_z+curve);
translate([0,connector_y/2+connector_screw,-1]) cylinder(d=3, h=connector_z+curve);
}
}
}
module bottom(){
difference(){
hull(){
translate([-connector_x/2-connector_space_x-mount_distance,mount_row,0]) cylinder(d=12, h=2);
translate([connector_x/2+connector_space_x+mount_distance,mount_row,0]) cylinder(d=12, h=2);
translate([-connector_x/2-connector_space_x-mount_distance,-mount_row,0]) cylinder(d=12, h=2);
translate([connector_x/2+connector_space_x+mount_distance,-mount_row,0]) cylinder(d=12, h=2);
translate([connector_x/2+connector_space_x,-connector_y/2-connector_screw-connector_space_y,0]) cylinder(d=curve, h=2);
translate([connector_x/2+connector_space_x,connector_y/2+connector_screw+connector_space_y,0]) cylinder(d=curve, h=2);
translate([-connector_x/2-connector_space_x,-connector_y/2-connector_screw-connector_space_y,0]) cylinder(d=curve, h=2);
translate([-connector_x/2-connector_space_x,connector_y/2+connector_screw+connector_space_y,0]) cylinder(d=curve, h=2);
}
translate([-connector_x/2-connector_space_x/2-mount_distance,mount_row,-1]) cylinder(d=3, h=connector_z+curve);
translate([connector_x/2+connector_space_x/2+mount_distance,mount_row,-1]) cylinder(d=3, h=connector_z+curve);
translate([-connector_x/2-connector_space_x/2-mount_distance,-mount_row,-1]) cylinder(d=3, h=connector_z+curve);
translate([connector_x/2+connector_space_x/2+mount_distance,-mount_row,-1]) cylinder(d=3, h=connector_z+curve);
}
}
top();
translate([0,(connector_y+connector_space_x)*2,0]) bottom();
Отверстие под кабель сами добавьте где вам нравится, по высоте разъем с проводами не мерил, измените как нужно.
Вот накидал по быстрому на переменных. могут быть ошибки. усложнять условиями не стал.
Спасибо! А можете подкрутить несколько вещей когда будет время?
- Расстояние между отверстиями крепления - нужно в 2 раза больше (сейчас похоже на рейку 2040, а надо на 2060, 40мм)
- На морде (где выключатель), можно чуть сильнее закруглить левый и правый край?
- В задней крышке от верха до середины нужен паз для проводов. Лучше если контуром с перемычками, чтобы юзер сам выламывал.
- IMHO cаму заднюю крышку лучше не винтами выставлять, а сделать для нее углубление по контуру (когда коробка прижмется, крышка ни куда не денется).
Насчет ушей крепления - я понимаю, что этот вариант рассчитан на печать без поддержек. Но внешний вид под вопросом, и у морды без пост-обработки фиговый вид (т.к. лежит на столе). IMHO лучше не выделываться с поддержками и сделать более классический вид - вертикальные боковушки, со скругленными переходами к ушам.
Кроме центровки задней крышки и проводов все параметрами регулируется.
Морду не надо переворачивать. печатайте как есть… а внутри поддержки…
внутри все равно не видно, так наплевать на следы от поддержек.
Центровка задней крышки выступами избыточна, так как при переливе она не закроется и придется дорабатывать напильником, а при большом зазоре будет опять же болтаться… винтами самое простое и эффективное. Это не первый мой корпус. 😃
Ок. Эксперименты с углублением крышки сделаю сам. Это только в пословицах умные учатся на чужих ошибках - свои доходят намного лучше 😃.
Вот еще вопросы:
- Можно поменять косые боковушки на просто открытые уши под прямым углом как тут (но со скруглением)?
- Сейчас радиус скругления общий для всего. Можно сделать больший (отдельный) радиус для левого-правого края морды? (и такой же для перехода на уши)
Лехко… Только не совсем понял что нужно… про уши понял, но тогда теряется прочность конструкции(может в этом месте расслоиться и отвалится например если заденете чемто) и выглядеть будет похуже на мой взгляд…
итак… про уши что значит скругление и радиус перехода на уши?
Между ушами и боковыми стенками угол 90 градусов. Место стыка хотелось бы сгладить окружностью. Радиус сглаживания - такой же как у левого и правого края морды (там где я просил радиус увеличить). Должно нормально получиться.
А. не. круглый вырез это геморойно. надо рисовать потом вырезать, либо внешние библиотеки использовать.
извиняюсь что не совсем в тему, просто хочу спросить у владельцев дельта-принтеров - в чем их “соль” помимо большой высоты печати? выглядят конечно футуристически, да и наблюдать за работой интересно (по крайней мере первое время), а вот как ведут себя при печати на крейсерских скоростях? спрашиваю т.к. у самого рельсовый H-BOT в типичном фанерном 6мм корпусе, при скорости печати больше 120 уже начинает нарастать вибрация на узлах, это при том что головка с трубкой и портал максимально легкий, а тут конструкция на ремнях висит… ??? спасибо
Ok, “будем искать”. В любом случае, спасибо за рисунок. С ним мне будет заметно проще чем совсем с нуля.
@Iroka, не в этой теме пожалуйста.
gist.github.com/…/92308ecc7b450bad5fedecc11e6271ba
Вот, набросал что хотел под выключатель, в openscad. Делал для печати с поддержками, иначе проблемы с внешним видом по разным причинам. Пока проверить не на чем, поэтому только исходник, потом на thingiverse нормально выложу.
www.thingiverse.com/thing:2671454 вот на thingiverse, чтобы проще смотреть было.
В общем, то что в первом посте мне будет быстрее и проще наколбасить в openscad самому.
Но есть новая задумка - сделать народный RDD Extruder типа Zesty Nimble. Понятно, что 1:1 на коленке такое не напечатать (точности не хватит). Но можно ведь взять готовые червячные передачи на али, троссик от бормашинки, и соорудить вокруг них остальное. Есть вот такой проект www.thingiverse.com/thing:1635925, но IMHO он монстрообразный из-за самопального червяка. По-моему такая самодостаточность излишняя.
Если есть желающие попроектировать - пишите.