IDC-разъемы BH-xx и BH2-xx: 3D модели (VRML2.0), библиотека для DipTrace и параметризованная модель (OpenSCAD).

.
Смотри также:

3D модели разъемов WF-xx (VRML2.0). Пример параметризованной модели (OpenSCAD).

Продолжаю в свободное время пополнять свою библиотеку элементов для DipTrace. На этот раз в заметке будут представлены 3D модели разъемов типа BH-xx (DS1013 от Connfly, KLS1-202 от KLS и т.д.):



и 3D модели разъемов типа BH2-xx (DS1014 от Connfly, KLS1-202B от KLS и т.д.):



со штырями прямого, углового и SMD-типа в формате VRML2.0. Количество контактов для каждой линейки разъемов составляет 6, 8, 10, 14, 16 и 20 штук (большее число пинов я практически не использую). Расстояние между штырями у BH-xx равно 2,54мм, у BH2-xx – 2,00мм. Картинки нарисованы по мотивам соответствующей документации компаний «Connfly» и «KLS Electronic» (официальные чертежи есть в прикрепленном архиве) и раскрашены в черный (корпус) и «золотой» (контакты) цвета́. Ну и также прилагаю библиотеку корпусов для DipTrace, использующую рассматриваемые 3D модели.

Полный перечень предлагаемых разъемов представлен ниже:

BH-xx (2,54мм)

● BH-06 (IDC-06MS); BH-06R (IDC-06MR); BHS-06 (IDC-06M-SMD);
● BH-08 (IDC-08MS); BH-08R (IDC-08MR); BHS-08 (IDC-08M-SMD);
● BH-10 (IDC-10MS); BH-10R (IDC-10MR); BHS-10 (IDC-10M-SMD);
● BH-14 (IDC-14MS); BH-14R (IDC-14MR); BHS-14 (IDC-14M-SMD);
● BH-16 (IDC-16MS); BH-16R (IDC-16MR); BHS-16 (IDC-16M-SMD);
● BH-20 (IDC-20MS); BH-20R (IDC-20MR); BHS-20 (IDC-20M-SMD);

BH2-xx (2,00мм)

● BH2-06 (IDC2-06MS); BH2-06R (IDC2-06MR); BHS2-06 (IDC2-06M-SMD);
● BH2-08 (IDC2-08MS); BH2-08R (IDC2-08MR); BHS2-08 (IDC2-08M-SMD);
● BH2-10 (IDC2-10MS); BH2-10R (IDC2-10MR); BHS2-10 (IDC2-10M-SMD);
● BH2-14 (IDC2-14MS); BH2-14R (IDC2-14MR); BHS2-14 (IDC2-14M-SMD);
● BH2-16 (IDC2-16MS); BH2-16R (IDC2-16MR); BHS2-16 (IDC2-16M-SMD);
● BH2-20 (IDC2-20MS); BH2-20R (IDC2-20MR); BHS2-20 (IDC2-20M-SMD).

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



Наверное, кому-то покажется, что я заново изобретаю велосипед – 3D моделей подобных разъемов на просторах Интернета вроде и так навалом. Но во-первых, на том же 3DContentCentral я не нашел моделей для разъемов BH2 с 6-ю и 8-ю контактами, да и с SMD-вариантом обычного BH-06 не так всё радужно (а у меня он присутствует чуть ли не в каждой второй поделке). Это, конечно, не говорит о том, что их там нет, но вот так вот в лоб они не ищутся (возможно из-за того, что разъемы эти могут называться по-разному – и BH, и IDC-M). Во-вторых, предлагаемый подход позволяет не шариться по Интернету в поисках нужной модели коннектора, а просто самому́ за па́ру минут сформировать необходимый разъем (в том числе, и с расстоянием между штырями 1,27х1,27мм или 1,27х2,54мм) и раскрасить его так, как душа пожелает. И обратите внимание – непосредственно рисовать вам при этом ничего не придется, необходимо только снять основные размеры с требуемого разъема (или взять их из даташыта). Ну и в-третьих (и, естественно, в самых главных) – я еще не наигрался с новой игрушкой (точнее, с двумя – с DipTrace и с OpenSCAD), а результаты этих игр, возможно, могут быть кому-то полезны – так почему бы не поделиться ими?

Итак, для формирования требуемого разъема из славного семейства BH будем использовать параметризованную OpenSCAD-овскую 3D модель. Параметризованную – это значит, что все необходимые размеры коннектора (т.е. его параметры) мы можем задавать сами, и в зависимости от конкретных значений этих размеров мы будем получать ту или иную модификацию разъема. В качестве примера предлагаю смастерить KLS1-202D-30-R от конторы «KLS Electronic»:



Это 30-пиновый «угловой» разъем с расстоянием между контактами 1,27х2,54мм (1,27мм между штырями в одном ряду и 2,54мм между рядами штырей). Скажем прямо – вариант далеко не самый распространенный, но зато сразу будет видно, что возможности параметризованной модели совершенно не ограничиваются привычными линейками BH и BH2.

Для дальнейшей работы нам потребуется программа OpenSCAD. Скачиваем и устанавливаем ее, если это не было сделано ранее. Далее нужно скачать саму параметризованную модель разъема (либо здесь, либо в конце заметки). Распаковываем архив и открываем файл «BH-xx.scad» из папки «BH2.54-xx»:



Мы видим, что в самом начале файла у нас присутствует куча «переменных» (типа Pins_Type, Wf, Hb и т.д.). Это и есть параметры, задавая которые определенным образом мы будем получать тот или иной разъем.

Как видно из последнего рисунка, все параметры модели можно условно разделить на два типа. Рассказывать про «общие» параметры отдельно я не буду – всё и так должно быть понятно из комментариев в программе. Ну а смысл значений «E», «W», «H» и т.д. кроме камментов хорошо иллюстрируется специально нарисованным чертежом:



То есть данные параметры – это просто некоторые из размеров формируемого разъема, которые могут быть либо тупо измерены штангенциркулем (лучше с глубиномером), либо взяты из даташыта на разъем:



Итак, начинаем заполнять список параметров для нашего случая (т.е. для разъема KLS1-202D-30-R). Количество контактов ставим «30», расстояние между штырями в одном ряду – «1,27», расстояние между рядами – «2,54». Выбранный разъем является «угловым», поэтому тип контактов приравниваем к «2». Ну а все переменные, отвечающие за отрисовку отдельных частей разъема, приравниваем к «1», ибо сначала нам надо будет оценить внешний вид полученной модели.

Приступаем к размерам различных частей разъема. Как следует из последнего рисунка, параметр «E» для 30-контактного разъема KLS1-202D-XX-R будет равен

E = (26,61мм – 17,78мм)/2 – 0,40мм/2 = 4,21мм.

Обратите внимание, что расстояние «Е» отмеряется не от середины штыря, а от его края, ибо вживую снимать штангелем удобнее именно этот размер. Далее идет ширина корпуса разъема «W», которая в нашем случае составит

W = 8,0мм + 0,3мм = 8,3мм.

Обратите внимание: на отрисовку всяких подробностей типа «бугорков» высотой 0,3мм здесь мы забиваем хер и считаем, что они просто увеличивают общую ширину разъема. Точно также поступаем и с высотой корпуса «Н», которая для KLS1-202D-XX-R будет равна

H = 5,5мм + 0,3мм = 5,8мм.

Толщина стенки корпуса «Wf» для 30-контактного разъема может быть сосчитана как

Wf = (26,61мм – 25,01мм)/2 = 0,80мм.

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

Высота «основания» (т.е. той части корпуса, которая держит контакты) для разъема KLS1-202D-XX-R составляет

Hb = 5,8мм – 4,0мм = 1,8мм.,

а ширина выреза под «ключ» для правильного втыкания ответного разъема IDC1.27:

Lk = 3,5мм.

Итак, с размерами, относящимися к корпусу разъема мы закончили. Переходим к параметрам, описывающим контакты. Как следует из даташыта, толщина штыря для нашего разъема равна

Wp = 0,4мм.

Высота, на которую штыри торчат из основания, составляет

Up = 3,5мм.

Обратите внимание: параметр «Up» присутствует на чертеже разъема явно, но это относительно редкое явление. Обычно «Up» приходится либо измерять штангенциркулем, либо для упрощения просто тупо принимать, что штыри не доходят до края корпуса разъема на 0,5мм…0,8мм.

Общая высота разъема вместе с корпусом и контактами (т.е. расстояние от верха корпуса до изгиба штырей) в нашем случае будет равна

Hp = 7,00мм + 2,54мм + 0,40мм/2 = 9,74мм.

И вновь – расстояние «Hp» отмеряется не от середины штыря, а от его края, в связи с удобством «живого» замера.

Следующий параметр «Ap» нужен только для отрисовки разъемов SMD-типа, поэтому здесь можно поставить любое значение – в нашем случае программа его всё равно проигнорирует. Ну а последний параметр контактов «Dp» – это расстояние от конца загнутых штырей до той стороны корпуса разъема, которая будет лежать на плате, и в нашем случае он может быть взят непосредственно с чертежа:

Dp = 2,6мм.

Осталось всего три параметра модели: «Wi», «Hi» и «Ri». Эти параметры описывают размеры и «выпуклость» треугольного значка на корпусе разъема, который указывает на первый контакт. Естественно, ни на каких чертежах эти размеры не указываются, и вводятся обычно «на глаз». Значения 1,00мм/2,00мм/0,20мм на мой взгляд наиболее хорошо подходят ко всем разъемам семейства BH, которые может сформировать предлагаемая модель. Но если есть желание – можно и поэкспериментировать с ними.

В итоге полностью заполненная «шапка» программы в нашем случае будет выглядеть вот так:



Нажимаем «Ctrl + S», сохраняя файл, и в правом окне наслаждаемся видом сформированного разъема (справа для сравнения приведена фотокарточка реального KLS1-202D-30-R):



Если полученный результат нас удовлетворяет, можно приступать к подготовке необходимых файлов. Процесс экспорта модели из OpenSCAD и последующего ее раскрашивания я подробно рассматривал ранее на примере разъема WF-16R, поэтому здесь я на данном вопросе останавливаться не буду. Отмечу лишь, что в нашем случае лучше экспортировать отдельные STL-файлы не только для корпуса разъема и его штырей, но и для треугольного идентификатора 1-го контакта, а при раскрашивании делать этот треугольник немного темнее/светлее, чем корпус. В противном случае идентификатор будет сливаться с корпусом, что сделает его практически незаметным.

Ну а на выходе Wings3D мы должны получить примерно такое (картинка слева; цвета́, естественно, могут быть совершенно другими):



И, думаю, очевидно, что теперь при помощи OpenSCAD мы можем в несколько кликов сделать 3D модели не только «угловых» разъемов KLS1-202D с любым количеством контактов, но и «прямые» и SMD-разъемы с расстоянием между штырями 1,27х2,54мм:



То же самое касается и разъемов с расстоянием 1,27х1,27мм, да и любых других подобных (надо только будет изменить параметры модели в соответствии с документацией). Даже тип «элеватор» можно более-менее правдоподобно сформировать, были бы желание и необходимость.

А на сегодня всё. Желаю удачи при создании 3D моделей и работе с ними.
.
.
.
.
Содержание архивов:

3D_BH-xx_Library.zip:
● готовые 3D модели разъемов BH-xx и BH2-xx с прямыми, угловыми и SMD-контактами (6, 8, 10, 14, 16 и 20 штырей);
● готовая библиотека с этими разъемами для DipTrace;

3D_BH-xx_Source.zip:
● исходный OpenSCAD-овский файл с параметризованной 3D моделью разъема BH-xx;
● двоичные STL-файлы для всех разъемов, перечисленных в начале заметки (на случай, если их надо будет просто раскрасить по-другому, а тип и количество контактов устраивает);
● документация на разъемы BH-xx и BH2-xx от контор «Connfly» и «KLS Electronic»;
● чертеж с описанием смысла параметров предлагаемой OpenSCAD-овской модели разъема.
Файлы в топике: 3D_BH-xx_Library.zip, 3D_BH-xx_Source.zip

Комментарии (3)

RSS свернуть / развернуть
Мне вот интересно, где ты берешь эти разъемы? Найти их с шагом, отличным от 2.54 проблематично даже на алиэкспрессе.

Алсо по поводу Pins_Type — неужели там нет ничего типа енумов? Ну или хотя бы просто константы завести.
0
  • avatar
  • Vga
  • 29 ноября 2017, 11:55
проблематично даже на алиэкспрессе.

да как так? даже у нас они в «чип-дипе» есть, в «русичи-нн».

неужели там нет ничего типа енумов?

откуда ж мне знать?:) может и есть, только я не знаю, что это. имеешь ввиду что-то типа ассемблерного

.equ Straight = 0
.equ RightAngle = 1
.equ SMT = 2

.equ Pins_Type = RightAngle
0
Это скорее пример констант, из-то явно можно сделать, дописав в начале
Straight = 0; RightAngle = 1; SMT = 2;

Енумы — в некотором роде разновидность констант, тип, задающий значения для некоторого перечисления. Характерный пример — в С:
enum {Straight, RightAngle, SMT} Pins_Type;

Сильно подозреваю, что без влияния С на язык OpenSCAD'а не обошлось.
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.