include use use use use use <./bobbin.scad> /* [Options] */ PCB_Y = 100.80; PCB_X = 100.30; PCB_Z = 1.69; PCB_CLR = 5; /* [Design] */ V_IN = 12; Turns_Ratio = 85; /* [Mount Stands] */ Mount_Hole_D = 4.36; Mount_X = 74.38; Mount_Y = 89.24; BOX_WALL = 1.5; /* [Render Options] */ render_fs=.1; render_fn=0; render_fa=.1; // Set Render Options $fs= ($preview) ? $fs : render_fs; $fn= ($preview) ? $fn : render_fn; $fa= ($preview) ? $fa : render_fa; zclear=2; module print_specs() { echo("ZVS Module: QS2015004"); echo("Input Voltage: 12-48V"); echo("Max Current: 20A"); echo("24V no load current: 3A"); echo("48V no load current: 6A"); echo("Caps .33uFx6 = 1.90 uF"); vpk = PI * V_IN; opk = vpk*Turns_Ratio; oac = opk/sqrt(2); echo("Vpk = ", vpk, " volts"); echo( "OutPk = ", opk," volts"); echo( "OutVpp = ", 2*opk," volts"); echo("RMS = ", oac, " volts"); } module terminal(bl=12, bz=-12, align=V_BOTTOM, orient=ORIENT_Z) { orient_and_align([5,5,5.56], orig_align=V_BOTTOM, align=align, orient=orient) { thread_insertM25(bl=bl, bz=bz); } } // print_specs(); difference() { hull() xspread(n=3, l=30) { cyl(l=16, d=16,align=V_TOP); } xspread(n=2, l=30) { up(6) cyl(l=12, d=18,align=V_TOP); terminal(align=V_TOP, orient=ORIENT_ZNEG, $die=true); } } xspread(n=2, l=30) { %terminal(align=V_TOP, orient=ORIENT_ZNEG); }