From f74afb5f6459a815a4d9f1101207808e5ee63e6a Mon Sep 17 00:00:00 2001 From: Bdale Garbee Date: Thu, 19 Dec 2013 13:16:39 -0700 Subject: [PATCH] Omron RF relays in both normal and "E" footprints --- packages/g6z1f.5c | 99 ++++++++++++++++++++++++++++++++ packages/g6z1fe.5c | 2 +- symbols/omron/G6Z-1F.sym | 121 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 221 insertions(+), 1 deletion(-) create mode 100644 packages/g6z1f.5c create mode 100644 symbols/omron/G6Z-1F.sym diff --git a/packages/g6z1f.5c b/packages/g6z1f.5c new file mode 100644 index 0000000..522028e --- /dev/null +++ b/packages/g6z1f.5c @@ -0,0 +1,99 @@ +/* + * Copyright © 2013 Bdale Garbee + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. + */ + +load "footprint.5c" +import Footprint; + +int total_pad = 14; +real center_gap = 6.00; + +real pad_width; +real rf_pad_width = 0.8; +real misc_pad_width = 1.1; +real pad_height = 2.3; +real pad_spacing = 2.54; + +int num_pad = total_pad / 2; /* per side */ + +string name = sprintf ("G6Z-1F"); + +real package_width = 20.0; +real package_height = 8.6; + +real pad_y_off = center_gap / 2 + pad_height / 2; + +element_start(name); + +real pad_off(int n) { + return pad_spacing * (n - (num_pad - 1) / 2); +} + +real corner(int dx, int dy) { + real x = dx * package_width / 2; + real y = dy * package_height / 2; + real len = 0.4; + + line(x, y, x - dx * len, y); + line(x, y, x, y - dy * len); +} + +corner(-1, -1); +corner(1, -1); +corner(-1, 1); +corner(1, 1); + +real dot_off = -.3; + +line(-package_width/2 + dot_off, package_height/2 - dot_off, + -package_width/2 + dot_off, package_height/2 - dot_off); + +for (pad = 0; pad < num_pad; pad++) { + /* bottom (1-num_pad) */ + + if (pad == 3) { + pad_width = rf_pad_width; + } else { + pad_width = misc_pad_width; + } + if (pad != 1 && pad != 5) { + pad_mm(pad_off(pad), + pad_y_off, + pad_width, + pad_height, + sprintf("%d", pad + 1), + sprintf("%d", pad + 1)); + } + + /* top side (total_pad - num_pad+1) */ + + if (pad == 0 || pad == 6) { + pad_width = rf_pad_width; + } else { + pad_width = misc_pad_width; + } + + if (pad != 3) { + pad_mm(-pad_off(pad), + -pad_y_off, + pad_width, + pad_height, + sprintf("%d", total_pad - pad), + sprintf("%d", total_pad - pad)); + } +} + +element_end(); diff --git a/packages/g6z1fe.5c b/packages/g6z1fe.5c index 00ecd40..3e5338e 100644 --- a/packages/g6z1fe.5c +++ b/packages/g6z1fe.5c @@ -1,5 +1,5 @@ /* - * Copyright © 2012 Keith Packard + * Copyright © 2013 Bdale Garbee * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/symbols/omron/G6Z-1F.sym b/symbols/omron/G6Z-1F.sym new file mode 100644 index 0000000..973e0bc --- /dev/null +++ b/symbols/omron/G6Z-1F.sym @@ -0,0 +1,121 @@ +v 20130925 2 +B 300 300 2200 1200 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1 +T -5 -3605 8 10 0 1 0 0 1 +footprint=SOIJ8 +T 295 1595 8 10 1 1 0 0 1 +refdes=RLY? +P 2800 800 2500 800 1 0 0 +{ +T 2800 800 5 10 0 0 0 6 1 +pintype=unknown +T 2445 745 5 10 1 1 0 6 1 +pinlabel=COMMON +T 2800 800 5 10 0 0 0 6 1 +pinseq=0 +T 2600 900 5 10 1 1 0 0 1 +pinnumber=4 +} +P 2800 400 2500 400 1 0 0 +{ +T 2800 400 5 10 0 0 0 6 1 +pintype=unknown +T 2445 395 5 10 1 1 0 6 1 +pinlabel=B +T 2800 400 5 10 0 0 0 6 1 +pinseq=0 +T 2550 500 5 10 1 1 0 0 1 +pinnumber=14 +} +P 2800 1200 2500 1200 1 0 0 +{ +T 2800 1200 5 10 0 0 0 6 1 +pintype=unknown +T 2445 1095 5 10 1 1 0 6 1 +pinlabel=A +T 2800 1200 5 10 0 0 0 6 1 +pinseq=0 +T 2600 1300 5 10 1 1 0 0 1 +pinnumber=8 +} +P 0 1200 300 1200 1 0 0 +{ +T 0 1200 5 10 0 0 0 0 1 +pintype=unknown +T 0 1200 5 10 0 0 0 0 1 +pinseq=0 +T 400 1000 5 10 1 1 0 0 1 +pinlabel=+ +T 100 1300 5 10 1 1 0 0 1 +pinnumber=7 +} +P 0 400 300 400 1 0 0 +{ +T 0 400 5 10 0 0 0 0 1 +pintype=unknown +T 0 400 5 10 0 0 0 0 1 +pinseq=0 +T 400 500 5 10 1 1 0 0 1 +pinlabel=- +T 100 500 5 10 1 1 0 0 1 +pinnumber=1 +} +T 400 750 9 10 1 0 0 0 1 +COIL +P 1200 0 1200 300 1 0 0 +{ +T 1200 0 5 10 0 0 90 0 1 +pintype=unknown +T 1200 0 5 10 0 0 90 0 1 +pinseq=0 +T 1050 100 5 10 1 1 0 0 1 +pinnumber=9 +} +P 1600 0 1600 300 1 0 0 +{ +T 1600 0 5 10 0 0 90 0 1 +pintype=unknown +T 1600 0 5 10 0 0 90 0 1 +pinseq=0 +T 1350 100 5 10 1 1 0 0 1 +pinnumber=10 +} +P 2000 0 2000 300 1 0 0 +{ +T 2000 0 5 10 0 0 90 0 1 +pintype=unknown +T 2000 0 5 10 0 0 90 0 1 +pinseq=0 +T 1750 100 5 10 1 1 0 0 1 +pinnumber=12 +} +P 2400 0 2400 300 1 0 0 +{ +T 2400 0 5 10 0 0 90 0 1 +pintype=unknown +T 2400 0 5 10 0 0 90 0 1 +pinseq=0 +T 2150 100 5 10 1 1 0 0 1 +pinnumber=13 +} +T 650 1300 9 12 1 0 0 0 1 +Omron G6Z-1F +T 1050 350 9 10 1 0 0 0 1 +RF GND +P 400 0 400 300 1 0 0 +{ +T 400 0 5 10 0 0 90 0 1 +pintype=unknown +T 400 0 5 10 0 0 90 0 1 +pinseq=0 +T 250 100 5 10 1 1 0 0 1 +pinnumber=3 +} +P 800 0 800 300 1 0 0 +{ +T 800 0 5 10 0 0 90 0 1 +pintype=unknown +T 800 0 5 10 0 0 90 0 1 +pinseq=0 +T 650 100 5 10 1 1 0 0 1 +pinnumber=5 +} -- 2.47.2