Кто хочет порисовать в OpenScad и внести посильный вклад в опенсорсы?

vtoryh

А у меня грусть печаль… поставил внешнюю видяху чтобы солид лучше работал, теперь опенскад после F6 вылетает нафик. 😦
То есть рисовать могу, а сохранять stl нет. 😦

ADF

(прошу простить за частичный оффтоп)

  • Проверить openGL драйвера: это одно из первых, что опенскаду может не понравиться;
  • Воткнуть опенскад на другую машину или на виртуальную машину.
  • Ещё есть openjscad.org
vtoryh

Да пофик на него. Я на солид перешел, опенскад для изменения старых проектов разве что. А вот за веб спасибо.

15 days later
Vitaly

Окей, возможно я хочу слишком многого 😃 . Побьем задачу на части. Пусть будет нарисовано в чем угодно, а в OpenSCAD перегоню сам.

Нужен просто грамотный конструктор с опытом промдизайна. В смысле, которой сам знает что такое эргономика, что узлы 220 вольт желательно закрывать целиком, и про специфику 3d-печати.

ADF

ИМХО нормальные модели под обозначеные задачи может сделать лишь тот, кто для себя такие же задачи решает и реально собирает такой-же принтер. Даже у опытных моделлеров бывают косяки и требуется доработка после пары испорченых прототипов.
Модели, нарисованые абстрактно - почти наверняка получатся сырыми: тому, что решит реально напечатать и пустить в дело придётся дебажить это самому, выкинув в мусорку несколько косячных билдов.

Vitaly

Когда появится грамотный конструктор, все нюансы я обсужу с ним лично. Рассуждать просто так - не вижу смысла.

22 days later
Vitaly

Фотачки бокса под выключатель:

  • На морде 6 (!) винтов. Грёбаный стыд…
  • Крепление винтами 35мм. Экзотика и целиться неудобно.
  • Контакты сетевого гнезда подходят подозрительно близко к направляющим. Автор наверное бессмертный. Паять такое сцыкотно, а если делать изолированные клеммы как на фотке - провода между направляющих выступают.
  • Ну и общий внешний вид как у табуретки.

Предложение порисовать в чем угодно - в силе.

vtoryh

Вот вам не спится спокойно. 😃
Вот накидал по быстрому на переменных. могут быть ошибки. усложнять условиями не стал.

$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();

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

Vitaly
vtoryh:

Вот накидал по быстрому на переменных. могут быть ошибки. усложнять условиями не стал.

Спасибо! А можете подкрутить несколько вещей когда будет время?

  • Расстояние между отверстиями крепления - нужно в 2 раза больше (сейчас похоже на рейку 2040, а надо на 2060, 40мм)
  • На морде (где выключатель), можно чуть сильнее закруглить левый и правый край?
  • В задней крышке от верха до середины нужен паз для проводов. Лучше если контуром с перемычками, чтобы юзер сам выламывал.
  • IMHO cаму заднюю крышку лучше не винтами выставлять, а сделать для нее углубление по контуру (когда коробка прижмется, крышка ни куда не денется).

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

vtoryh

Кроме центровки задней крышки и проводов все параметрами регулируется.
Морду не надо переворачивать. печатайте как есть… а внутри поддержки…
внутри все равно не видно, так наплевать на следы от поддержек.
Центровка задней крышки выступами избыточна, так как при переливе она не закроется и придется дорабатывать напильником, а при большом зазоре будет опять же болтаться… винтами самое простое и эффективное. Это не первый мой корпус. 😃

Vitaly

Ок. Эксперименты с углублением крышки сделаю сам. Это только в пословицах умные учатся на чужих ошибках - свои доходят намного лучше 😃.

Вот еще вопросы:

  • Можно поменять косые боковушки на просто открытые уши под прямым углом как тут (но со скруглением)?
  • Сейчас радиус скругления общий для всего. Можно сделать больший (отдельный) радиус для левого-правого края морды? (и такой же для перехода на уши)
vtoryh

Лехко… Только не совсем понял что нужно… про уши понял, но тогда теряется прочность конструкции(может в этом месте расслоиться и отвалится например если заденете чемто) и выглядеть будет похуже на мой взгляд…
итак… про уши что значит скругление и радиус перехода на уши?

Vitaly

Между ушами и боковыми стенками угол 90 градусов. Место стыка хотелось бы сгладить окружностью. Радиус сглаживания - такой же как у левого и правого края морды (там где я просил радиус увеличить). Должно нормально получиться.

vtoryh

А. не. круглый вырез это геморойно. надо рисовать потом вырезать, либо внешние библиотеки использовать.

Iroka

извиняюсь что не совсем в тему, просто хочу спросить у владельцев дельта-принтеров - в чем их “соль” помимо большой высоты печати? выглядят конечно футуристически, да и наблюдать за работой интересно (по крайней мере первое время), а вот как ведут себя при печати на крейсерских скоростях? спрашиваю т.к. у самого рельсовый H-BOT в типичном фанерном 6мм корпусе, при скорости печати больше 120 уже начинает нарастать вибрация на узлах, это при том что головка с трубкой и портал максимально легкий, а тут конструкция на ремнях висит… ??? спасибо

Vitaly

Ok, “будем искать”. В любом случае, спасибо за рисунок. С ним мне будет заметно проще чем совсем с нуля.

@Iroka, не в этой теме пожалуйста.

1 month later
Vitaly

gist.github.com/…/92308ecc7b450bad5fedecc11e6271ba

Вот, набросал что хотел под выключатель, в openscad. Делал для печати с поддержками, иначе проблемы с внешним видом по разным причинам. Пока проверить не на чем, поэтому только исходник, потом на thingiverse нормально выложу.

7 days later
Vitaly

В общем, то что в первом посте мне будет быстрее и проще наколбасить в openscad самому.

Но есть новая задумка - сделать народный RDD Extruder типа Zesty Nimble. Понятно, что 1:1 на коленке такое не напечатать (точности не хватит). Но можно ведь взять готовые червячные передачи на али, троссик от бормашинки, и соорудить вокруг них остальное. Есть вот такой проект www.thingiverse.com/thing:1635925, но IMHO он монстрообразный из-за самопального червяка. По-моему такая самодостаточность излишняя.

Если есть желающие попроектировать - пишите.

ADF

Гибкий вал и червяк - не самое лучшее решение, так как там есть лаг на скручивание гибкого вала.
Правильный директ драйв выглядит примерно так:

(прошу простить за оффтоп)

Vitaly

Пусть растут все цветы. Но материально поддержать я готов только RDD.