tag:blogger.com,1999:blog-85479646865338739412017-11-07T04:24:37.783-08:00Sigurthr EnterprisesMattnoreply@blogger.comBlogger28125tag:blogger.com,1999:blog-8547964686533873941.post-80385044920800870222016-08-26T16:24:00.004-07:002016-08-26T16:24:51.034-07:00USSTCC Customer Success Video!A friend and customer of mine successfully completed his second SSTC using my USSTCC controller and design specs. His newest coil is a full bridge SSTC running off rectified and filtered 120v mains, capable of unlimited duty at more than 1.6kW CW or Interrupted mode. Check out his new video!:<br /><br /><br /><div class="separator" style="clear: both; text-align: center;"><iframe width="320" height="266" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/0losM5D5E9Q/0.jpg" src="https://www.youtube.com/embed/0losM5D5E9Q?feature=player_embedded" frameborder="0" allowfullscreen></iframe></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;">Congrats Jeff!</div>Matthttps://plus.google.com/116620987173229654069noreply@blogger.com2tag:blogger.com,1999:blog-8547964686533873941.post-70860411124424765352016-02-07T18:46:00.002-08:002016-02-07T18:46:46.930-08:00Improved Arduino Ethernet WebServer ExampleJust a quick one today because the need has arisen;<br /><br />I had tons of issues getting the Arduino's Ethernet Shield to work, and it turned out to all be because of the shitty coding in the example sketch. So, I did what any one would do once they realized the error; I wrote a better example! It even includes comments to help the programmer see where to put the normal loop() subroutines and shows how to use escape sequences to implant quotes (needed for hyperlinking in HTML).<br /><br /><div style="text-align: center;"><a href="https://app.box.com/s/kvkbj5vm4h4ew8ktzycqin8534w9uh0t" target="_blank">Download the improved WebServer example sketch here.</a></div><br /><br />Matthttps://plus.google.com/116620987173229654069noreply@blogger.com2tag:blogger.com,1999:blog-8547964686533873941.post-52104985884677831922016-01-31T21:25:00.002-08:002016-01-31T21:36:20.306-08:00Sigurthr's Electrical Engineering CalculatorSometime in 2014 I decided that I was tired of using online calculators for various common electrical engineering related equations. It was time consuming to use and annoying to keep track of. I shortly decided that I would write up a simple CLI program to act as a calculator for all these common equations. I completed about half of it by spring of 2015, and I filed it away to be completed later on. I pretty much forgot about it until early January of 2016, despite having a note on my whiteboard to finish the damn thing for the past year, haha. Thankfully I had it mostly done so it only took a few hours of coding to finish.<br /><br />So, without further ado, I present my EE Calculator! Here is a screenshot of the function selection page so you can see everything it can do:<br /><div class="separator" style="clear: both; text-align: center;"><a href="http://3.bp.blogspot.com/-QDw7ZUrm8EY/Vq7q66XhXyI/AAAAAAAAAK8/4CaItEFp1vY/s1600/EE_Calc.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="432" src="http://3.bp.blogspot.com/-QDw7ZUrm8EY/Vq7q66XhXyI/AAAAAAAAAK8/4CaItEFp1vY/s640/EE_Calc.jpg" width="640" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: left;">As you can see it is quite simple to use, but it is lightning fast and very light weight. Functions 2, 3, 6, 7, 9, 12, 13, and 15 are favorites of mine that I use quite regularly. On the initialization of each function the equation used is displayed, and the variables requested are explained. The program loops once the function is finished so you don't have to start it again to choose a new selection. Entering 0 at the function select screen or clicking the exit X closes the process and shuts down the program with no hanging.</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://app.box.com/s/wonnhb5pi99003tf7atsfszh6x9e9fll" target="_blank">Click here to Download my EE Calculator Program!</a></div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">If you think of a formula or function you would like added to the program, just comment on this post and I'll see about adding it in!</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">Note that is is a .exe file so some browsers may object to downloading it simply because of the file type. Likewise, upon first run, Windows10 warns it may be unsafe, and you have to click "More Info" and then "Run Anyway" to get windows to allow it. <b>It is 100% clean and free of any malware though, and passes all scans I can throw at it with antivirus programs.</b> If you are unable to download it and want a zipped version, just contact me and I'll be happy to make one and upload it.</div><br />Matthttps://plus.google.com/116620987173229654069noreply@blogger.com0tag:blogger.com,1999:blog-8547964686533873941.post-48562977447588243022016-01-31T21:12:00.004-08:002016-01-31T21:12:59.997-08:00The Little UV Sensor That Couldn't... Adafruit's SI1145So, I'll be rather quick on this, since this little bit of silicon doesn't really deserve more. I am extremely disappointed in Adafruit for endorsing such a piece of crap, but I suppose I can't expect them to actually thoroughly test every bit of tech they put their name on, certainly not items which need spectral light sources to test. They're a business, not a hobbyist or enthusiast who would actually be looking to use the products. Still though, 5 minutes actually looking at the output data should have clued them in that something is off. I will be writing them about this though, even though I know that is a futile endeavor.<br /><br />The SI1145 sensor is *NOT* a calibrated sensor. It has two photodiodes on chip, which are both sensitive to the same spectral range of 300-1100nm. The only difference is that the two have different response curves within that range. Neither photodiode has any passband filtration on it, so neither photodiode can tell if it is reading Visible or IR or UV light.<br /><br />Furthermore, it is *NOT ACTUALLY CAPABLE OF MEASURING ULTRAVIOLET LIGHT*. If you wanted to use this sensor to actually measure relative levels of UV light you would need about $200 in UV-Pass optics and a custom enclosure to block out all stray Visible and IR light. I happen to have such a set of optics from my UV-Photography equipment and was able to fully test this sensor. You'd also then be shocked at how horribly INsensitive this sensor is to UV. The fact that it is sold as a "calibrated UV index" sensor is a joke.<br /><br />In terms of raw sensitivity is also isn't very sensitive either! It does have a decent dynamic range, but the range is all on the high intensity side. It takes about 100mW/mm^2 to max out the sensor, much higher than raw sunlight. What makes it seem like it is more sensitive than it is, is that the damned thing never reports 0, even when in perfect darkness! I put the sensor inside a Lead Shielded "pig" and still got readings of ~254 on the IR and Vis channels.<br /><br />Here's the response data from the datasheet:<br /><div class="separator" style="clear: both; text-align: center;"><a href="http://3.bp.blogspot.com/-F0rNhX3rjnI/Vq7numQ44DI/AAAAAAAAAKw/f0RapU_nFHM/s1600/SI1145_Sensitivity.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="http://3.bp.blogspot.com/-F0rNhX3rjnI/Vq7numQ44DI/AAAAAAAAAKw/f0RapU_nFHM/s400/SI1145_Sensitivity.jpg" width="357" /></a></div><br /><br />As you can see if you wanted to use it to measure relative light levels of any specific type you would need the associated bandpass optics and a suitable stray light occlusion enclosure.<br /><br />So, what does this chip actually do? It reads the Vis and IR photodiodes and reports the readings over I2C. The "UVindex" data that Adafruit's library produces is just a mathematical adjustment made to the visible light photodiode's reading. This is meant to approximate a UVindex reading that corresponds to a given visible light intensity in clear weather sunlight. It is the literal equivalent of saying "this is about as bright of light as it was outside that day when the weather channel said the UV index was X".<br /><br />Without having to add on expensive bandpass optics the only use this sensor board has is to report non-qualitative, relative light intensity over I2C. It's basically a fancy CdS Photocell LDR. Use it as such, and nothing more.<br /><br />I've rewritten the Arduino code for this sensor board to reflect my findings and output non-fictitious data. You may use it freely, but since it still uses Adafruit's library do give them credit if you use it.<br /><a href="https://app.box.com/s/ys47fnjwpa31q7bvvrhafq6j6vi78ia6" target="_blank"><br /></a><div style="text-align: center;"><a href="https://app.box.com/s/ys47fnjwpa31q7bvvrhafq6j6vi78ia6" target="_blank">Download My Code and the Adafruit Library for this sensor Here.</a></div>Matthttps://plus.google.com/116620987173229654069noreply@blogger.com3tag:blogger.com,1999:blog-8547964686533873941.post-12206315660609119372016-01-24T18:19:00.001-08:002016-01-24T18:19:12.912-08:00Phasing a Pentafiliar Gate Drive Transformer (GDT)<div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/xZwWVM4.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/xZwWVM4.jpg" height="478" width="640" /></a></div><br />So you've made yourself a sweet Half Bridge SSTC or DRSSTC, and now you want to increase your coil's performance by moving to a Full Bridge. Adding the extra transistors, diodes, resistors, and doing all the additional layout is really the hard part, but I get asked all the time how to phase a GDT for a full bridge as if it is this mysterious perilous endeavor. It really isn't any more difficult than doing a GDT for a Half Bridge.... IF you have a Dual Channel Oscilloscope. Unlike with a simple Trifiliar GDT, you cannot rely on process of elimination alone to determine the phasing. This time you really do need a signal source and a scope. Now I should say, you can simply use two Trifiliar GDTs in parallel, but you must really try hard to balance the impedances or your bridge can fail catastrophically from cross-conduction ("shoot through"). I find it simply isn't worth the risk. Not to mention, you need to compare phases between the two trifiliar GDTs, and that really isn't much easier, but it could be done provided you have a signal source and a meter that can measure differential ac voltages. That's a topic for another day, and one I'm not inclined to broach honestly.<br /><br />What I've done here is show the results of properly phasing a Pentafiliar GDT through images. I also include an image set at the end that shows what happens when you probe a winding with the "wrong" phasing. This is of course what you'd see as you are determining the phases. I wanted it to very clear what is going on and what you're looking for, so you have to see what the "wrong" result looks like to know what the "right" result is.<br /><br />I didn't show the process of winding the GDT, or pairing off individual windings with an ohmmeter/continuity meter, but that's the same as with a Trifiliar GDT, you just do it with four more wires.<br /><br />I've already labeled my windings "A" and "B", with the indicator on the "Gate" side wire. B is antiphase of A, and of course to reverse the phase of a winding we just swap the wires. Pay attention to which wire the scope probe is on, even though I do state it clearly. We keep the first channel on a single arbitrarily chosen winding the entire time, making sure to never reverse the connections to that winding. From this we have a stable comparison point to reference the second channel against.<br /><br />I also used my 1MHz sine discrete signal generator because I wanted to show that these cores I use and my techniques really are good at 1MHz like I claim them to be! You might note that compared to the first image, when the second probe is added the amplitude drops by half. This is because my 1MHz source is a very high impedance source, around 4Kohm impedance, so the low impedance GDT windings are loading it significantly.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/fdy47dy.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/fdy47dy.jpg" height="640" width="426" /></a></div>Here you can see that it really is a 1MHz signal propagating through the GDT into Channel A of the scope.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/ZsLI8hq.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/ZsLI8hq.jpg" height="640" width="293" /></a></div>Now we've added Channel B, this time I set it to look at an in-phase winding. You can see the signals are identical and in phase. In the middle image I shifted channel B down a bit in the Y axis so you can indeed see the waveform distinctly.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/RZhhQW2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/RZhhQW2.jpg" height="640" width="424" /></a></div>In this image I picked an anti-phase pair, but reversed my connections to that phase. This means that signal is in-phase. This is the opposite of what you want to see on an anti-phase pair, so you know you have to reverse the connections.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/b7LIfYs.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/b7LIfYs.jpg" height="640" width="424" /></a></div>Here we're looking at the phase relationship of two anti-phase signals. You can see now I have the scope probe actually on the "Gate" wire instead of the ground clip being there. This is what you want to see between an "A" pair and a "B" pair.Matthttps://plus.google.com/116620987173229654069noreply@blogger.com1tag:blogger.com,1999:blog-8547964686533873941.post-14374455509697149272016-01-22T20:13:00.000-08:002016-01-22T20:13:09.222-08:00Arduino and ATTiny85 SSTC Interrupter - Version 3!While doing the programming for the V2.0 revision I decided that I really wanted to try my hand at making an interrupter all on my own, without relying on someone else's code as a basis. While it sounds like an easy task it really is difficult because of the hardware limitations inherent with the ATTiny and ATMega chips. Primarily, they overflow variables at 2^15, which means if you're doing math in microseconds you can do frequencies below about 32Hz. You can of course do math in milliseconds, but you can only do integers, not floats, so timing accuracy and variability suffer. The way around this is to cleverly use both uS and mS to achieve your desired goal.<br /><br />I wanted to make improvements upon the previous version of the software, and while I have done that in some regards, in other ways V2.0 is superior to V3.0. Particularly, I found there is a hardware glitch present between 34Hz and 54Hz where the internal timer subsystems don't trigger the GPIO pin states correctly despite having the correct values in the variables. I thought about writing to the hardware registers directly and avoiding delay() calls but it really didn't seem work it. So, I simply set a fixed duty cycle for this 20Hz wide range and decided to live with it. If you want no interruption in duty cycle variability, use V2.0 instead. However, V3.0 does have some nice features; no limit on maximum duty cycle. I've tested it up to 95%, though the current default implementation only allows for 50% maximum as I couldn't really find a use for &gt;50% duty during field testing. <i>I have a version of this software available upon request if you would like it, just tell me you want "rev 3.0, not rev 3.1". 3.1 is the internal name for this 3.0 release because if I labeled it 3.1 everyone would ask me "you went from 2.0 to 3.1?".</i> It's a lot easier to modify the minimum and maximum frequencies now as well with clearly labeled variables for these two parameters. Minimum duty cycle is set at 2.5%, and going so low involves some clever use of nested conditionals to avoid pitfalls that occur when you aren't able to use floats in some places and are limited to 2^15 in other places. V2.0 avoids this by limiting maximum duty cycle to 10%, V3.0(internal) avoids this by limiting minimum duty cycle to 10%. <b>So in this release we actually have 2.5%-50% duty cycle output.</b><br /><br />Like with V2.0 there's reduced GPIO and Hardware requirements, and as such CW mode can be accessed by turning the frequency dial to maximum. I've ported the code to Arduino for ease of use as well. I've learned to loathe the ATTiny85 chip over the years simply because of its increased limitations and lack of an integral USB interface or bootloader.<br /><br />Here's the files and diagram for the Arduino UNO version:<br /><div style="text-align: center;"><a href="https://app.box.com/s/a4qf9rbokefiibwwkvjxs6246pw38okl" target="_blank">Download Source Code Here</a></div><div style="text-align: center;"><a href="https://app.box.com/s/8gecqgshnhjih0kd2ofx96m8fcm52i20" target="_blank">Download Diagram Here</a></div><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/MlxHI1i.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/MlxHI1i.jpg" height="320" width="233" /></a></div><br /><br />Here's the files and diagram for the ATTiny85 version:<br /><div style="text-align: center;"><a href="https://app.box.com/s/l2azgy0mzpztqq8dj0ls13ddt5ultdxt" target="_blank">Download Source Code Here</a></div><div style="text-align: center;"><a href="https://app.box.com/s/8t9ecqkt3ax1b43fo18ka2isofxq4go2" target="_blank">Download Schematic Here</a></div><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/G8blniK.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/G8blniK.jpg" height="301" width="400" /></a></div><br /><br />Matthttps://plus.google.com/116620987173229654069noreply@blogger.com0tag:blogger.com,1999:blog-8547964686533873941.post-294139460541478372016-01-22T19:43:00.002-08:002016-01-22T20:15:24.807-08:00ATTiny85 SSTC Interrupter - Version 2.0I finally got around to revising the code and schematic for my original SSTC interrupter. I do want to point out that this is still heavily based on Gao (loneoceans)'s code and he really deserves a great deal of credit for it. See his website here:&nbsp;http://www.loneoceans.com/labs/<br /><br />Without going into the ins and outs of the code here are the abridged changes:<br />- Reduced the number of GPIO pins required and moved away from using the MISO/MOSI pins. Having those two pins used causes some programming issues, especially when you're using a digispark or similar device that doesn't have a standalone usb controller.<br />- Reduced hardware requirements. Now it only uses 2 pots, 1 resistor, an NPN transistor, and the FB-129 transmitter (outside of the power supply section). In the previous version the LED of the FB-129 really stressed the GPIO current handling, and it lead to early failure of some less robust chips.<br />- Reduced the default max frequency to 256Hz. You can change it back easily in code.<br />- CW mode can be accessed by turning the frequency dial to maximum.<br /><br />This still uses Gao's algorithm for frequency and duty cycle synthesis, so it still only allows 10% duty maximum. If you want an enhanced duty cycle range, see my later post about Version 3.0 .<br /><br />Here's the updated schematic and code files:<br /><div style="text-align: center;"><a href="https://app.box.com/s/etvz7a0h8nwqdwo4sg0lhs8ilmc9qdx7" target="_blank">Download Source Code Here</a></div><br /><div style="text-align: center;"><a href="https://app.box.com/s/8t9ecqkt3ax1b43fo18ka2isofxq4go2" target="_blank">Download Schematic Here</a><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/G8blniK.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/G8blniK.jpg" height="301" width="400" /></a></div><br /></div><br /><br />Matthttps://plus.google.com/116620987173229654069noreply@blogger.com0tag:blogger.com,1999:blog-8547964686533873941.post-19217235041010765192016-01-16T15:13:00.000-08:002016-01-17T13:53:19.253-08:00Arduino - True Binary Digital ClockSo, nearly a year ago I posted this:&nbsp;http://sigurthrenterprises.blogspot.com/2015/01/arduino-binary-clock-serial-output.html&nbsp;It basically is the intent statement for the binary clock I was developing and a teaser sketch. I fully developed my clock shortly after posting that but life got busy and I never got around to publishing the results. Today I rectify that oversight.<br /><br />I've always thought binary clocks are cool. Unfortunately, most of them are LED based and used BCD instead of real binary output. BCD takes up a huge amount of space and is far slower to read than real binary, so I knew that isn't what I wanted. Also, if you're going to do it on a microcontroller, it takes a ton of GPIO ports to do BCD. After scouring the net for days I couldn't find a single clock that outputs the time the way I wanted, so I knew I had to make it...<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/SZssLEm.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/SZssLEm.jpg" height="640" width="622" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/o6XATyY.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/o6XATyY.jpg" height="476" width="640" /></a></div><br />As you can see, it's really quite simple. Thanks to the I2C "TWI" communications interface it is very easy to put together and interfaces beautifully with readily available inexpensive peripherals. The real magic happens inside the C program written for it. Here we poll the Real Time Clock for the current time (integer) and do some math and a clever trick using the itoa() function to convert that value into binary (string). Then we send the data to the LCD which updates once a second. Not content with an ill-centered output, I added a series of conditional statements to pad the MSB with [string] 0s as needed to keep the time centered on the screen.<br /><br />Here is the data file you can download that contains all of the files; source code, required libraries, parts list, and instructions. Enjoy!&nbsp;<a href="https://app.box.com/s/2fcwf4crkuz7mu4wnwfgo8giwvnfays0" target="_blank">Binary Clock Data File</a><br /><br />If you just want to see the source code <a href="https://app.box.com/s/qka1tr2szybsfqqezh5i6dqw0o5lcssb" target="_blank">here is the stand-alone .txt file</a>.<br /><br />p.s. I do NOT recommend using the housing I used. It has been a serious pain in the ass because the inaccessible nuts that the screws mount into are set into blind holes which have not been bored out to accommodate said screws. Additionally, the housing's thickness is not great enough to allow pin header cables to connect normally to the pins on the back of the I2C LCD. I had to bend the pins 90deg and then solder the header cables to it. I didn't explicitly show it, but the RTC module nests nicely on the right side of the UNO in the space there, requiring no mechanical restraints.Matthttps://plus.google.com/116620987173229654069noreply@blogger.com0tag:blogger.com,1999:blog-8547964686533873941.post-46437592469510499062016-01-08T01:28:00.000-08:002016-01-08T01:28:21.898-08:00New X-Ray Cassettes Came In... New Radiographs to see!The two x-ray cassettes I ordered came in, and my research rang true; both are green emission and far better quality and performance than the old Cromex blue I had initially used. I got one X-Sight Regular X-Omat and one Lanex Fine X-Omat, both by Kodak.<br /><br />It took a few hours to work out the best exposure times and settings but I eventually nailed it down pretty well. Even with dark frame subtraction and keeping the camera off axis of the main beam there's tradeoffs to be had. In the end I found it best to use a wide aperture and put the camera On-Axis. The reduced thermal pixel noise greatly outweighed the increased x-ray induced pixel noise.<br /><br />To my surprise the Fine screen isn't that much finer than the Regular screen. I think though the difference would be highly noticeable if I were using X-Ray Film and trying a magnified imaging setup. Since I'm just imaging the phosphor screen using digital photography the increase in resolution is negligible given the increase in noise due to about half the amount of light production.<br /><br /><div style="text-align: center;">X-Sight</div><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/ehXA4Ng.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/ehXA4Ng.jpg" height="640" width="480" /></a></div><br /><div style="text-align: center;">Lanex Fine</div><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/Sfw1FWq.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/Sfw1FWq.jpg" height="640" width="480" /></a></div>&nbsp;<br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/bzby9tT.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/bzby9tT.jpg" height="320" width="301" /></a></div><div style="text-align: center;"><br /></div><div style="text-align: center;">Usually I prefer the as-shot radiographs, but sometimes the traditional negative view looks better. I'll include whichever works best, or if it's a tie, both.</div><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/X0DnQv7.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/X0DnQv7.jpg" height="518" width="640" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/ieeNshN.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/ieeNshN.jpg" height="514" width="640" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/VpDUDXV.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/VpDUDXV.jpg" height="265" width="320" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/kb0UYTQ.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/kb0UYTQ.jpg" height="320" width="215" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/FaPFFj8.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/FaPFFj8.jpg" height="320" width="104" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/ciVrM3d.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/ciVrM3d.jpg" height="320" width="104" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/u3eqnBk.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/u3eqnBk.jpg" height="320" width="239" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/THyhGCZ.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/THyhGCZ.jpg" height="320" width="281" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/uUwlY20.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/uUwlY20.jpg" height="320" width="197" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/8LRhpMr.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/8LRhpMr.jpg" height="320" width="153" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/JOBKFb8.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/JOBKFb8.jpg" height="320" width="283" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/NVup5IY.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/NVup5IY.jpg" height="285" width="320" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/6Suxqq5.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/6Suxqq5.jpg" height="320" width="183" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/FE193Bn.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/FE193Bn.jpg" height="217" width="320" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/7ckeVRU.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/7ckeVRU.jpg" height="320" width="198" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/A04duNy.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/A04duNy.jpg" height="286" width="320" /></a></div><br /><div style="text-align: center;">Lanex Fine</div><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/9yrsiuT.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/9yrsiuT.jpg" height="544" width="640" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/p7LfvPB.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/p7LfvPB.jpg" height="640" width="440" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/L3VgJLq.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/L3VgJLq.jpg" height="640" width="366" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/KlNKDtX.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/KlNKDtX.jpg" height="640" width="364" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/Id5sSOd.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/Id5sSOd.jpg" height="640" width="436" /></a></div><br />Matthttps://plus.google.com/116620987173229654069noreply@blogger.com0tag:blogger.com,1999:blog-8547964686533873941.post-1938605598149444982015-12-30T01:45:00.002-08:002016-01-03T21:02:43.044-08:00Portable DIY X-Ray Source & Radiography<div style="text-align: center;"><u>Intro.</u></div>X-rays, "rays of the unknown" as they were first called, marveled all they encountered since their discovery in 1895 by Wilhelm Roentgen. Given my background and familiarity with radiation, physics, and electronics, making an X-ray unit was only a matter of time. Even though many have done this before me, and if boiled down to its essence it is nothing more than applying the correct power to the correct vacuum tube, it is still quite an accomplishment. Much of the wonders of the world lose their appeal when distilled too far, after all, so let's not get too complacent and forget how great it is what we are achieving here.<br /><br /><div style="text-align: center;"><u><b>SAFETY.</b></u></div>Before I go any further, I want to explicitly point out that I possess and employ the use of adequate safety procedures and equipment during all activities related to the construction, operation, and use of this device. Everything from radiation detection equipment to radiation shielding, to electrical and fire safety equipment is employed to ensure a safe adventure in radiography. If you do not *intimately* understand the hazards and means of minimizing said hazards involved in such a device, please never, ever attempt this. You can seriously injure yourself or any bystanders, even ones outside of the immediate operation area. Potentially, you could even kill yourself. <b>THIS IS DANGEROUS.</b><br /><u><br /></u><br /><div style="text-align: center;"><u>The Nitty Gritty Basics.</u></div>So, how about a paragraph on the internal process of generating X-rays? Simply put we're accelerating Electrons and then smashing them at a very dense metal target. The electric field of the nucleus of the high density target atom slows down and scatters the incident fast electrons. During the braking effect, the electrons emit a continuum spectrum of x-ray photons as a means of releasing energy. This is Bremsstrahlung Radiation, or "braking x-rays". The maximum energy of the emitted photons is the maximum speed of the incident electrons; a 70kV accelerated electron can emit a 70keV photon. Secondly, the electrons bound to the high density target atom can get knocked out of place. When this happens the electrons in the upper levels of that excited atom fall down to fill the void of the ejected electron. The electron that falls to fill the void emits a x-ray photon as a means of releasing excess energy. This is akin to fluorescence, and is indeed referred to as XRF - X-ray fluorescence. The energy of the emitted photon is a characteristic of the atom that released it. Target atoms typically have a few discrete energies emitted by characteristic XRF.<br /><br /><div style="text-align: center;"><u>Operational Mode of my Tube.</u></div>So, in our Coolidge tube as invented by William Coolidge in 1913, we apply a high positive voltage to the Anode (which is constructed of a high density metal, tungsten in my tube, and surrounded by copper as a heatsink) in respect to the Cathode. The cathode here is actually a filament made of tungsten which we pass a high current at low voltage through, like a light bulb. When the tungsten reaches about 2000C it emits copious amounts of electrons all around it in a cloud. This is often referred to as "boiling off electrons". These electrons are accelerated towards the high voltage anode via electrostatic attraction. As my tube is a modern coolidge tube designed for dental radiography it has a third electrode inside; the Wehnelt Cylinder Electrode. This was invented by Arthur Wehnelt in 1903, and is essentially an electrostatic lens. Its function is similar to that of a screen grid in a standard thermionic valve vacuum tube; to repel or attract electrons from the cathode. Unlike in a standard valve tube, where the grid is between the cathode and the anode, in our x-ray tube it is behind the cathode. Here it acts as an electrostatic reflector and focuser to shape the cloud and resultant beam of electrons. It would also accelerate the electrons towards the anode, but by a negligible amount compared to the effect of the anode's high positive voltage. Since our grid is behind the cathode, it doesn't use a positive voltage in respect to cathode to allow/enhance flow of electrons to the anode, it needs a negative voltage! Think of it this way, instead of pulling electrons closer to the anode, it is pushing them away from it self, towards the anode. I do not currently have a bias supply set up for the Wehnelt electrode in my tube, which would use between -100V and -500V. Fortunately, most dental tubes operate just fine with the Wehnelt electrode held at Cathode potential, the result of course being far simpler implementation of the tube at a reduced clarity in the resultant radiograph. I may add this supply in later, as I already have an idea on how to achieve this inexpensively and easily. It would of course require I modify the existing setup, and if you've seen the photos of my build, you'll know that means messing with a bunch of messy mineral oil.<br /><br /><div style="text-align: center;"><u>Datasheet? I don't need no stinkin' datasheet! ...Oh wait, I wish I had one...</u></div>Since the datasheet for my tube was unavailable, and it is no longer in production, I had to determine filamentary specifications empirically. Thankfully I had some guidance from the helpful folks at 4HV.org. Among all the challenges involved in making your own x-ray machine, not having the specifications of your x-ray emission device is no small hill amongst the mountains! Not wishing to vaporize or sever my filament, I couldn't just use figured supplied with modern incarnations of my tube and hope for the best. I had to start conservatively and ease the cathode into operation, despite the risks of shortened cathode life that a normal filament cathode endures if run at too low of a voltage. Fortunately, in x-ray heads the amount of X-rays produced, or x-ray flux is controlled via the filament voltage. Emitting more electrons means more electrons strike the anode, which results into more x-rays emitted.<br /><div style="text-align: center;"><br /></div><div style="text-align: center;"><u>Initial Testing.</u></div>I first connected my coolidge tube to a small low power pulsed HVDC supply in the form of a VCO controlled modern Flyback transformer. Here the currents available are quite small, and the voltage sags greatly under load. Output is between 15kV and 55kV at several mA to a few hundred uA (respectively); sufficient to cause bremsstrahlung x-ray flux levels needed to do initial emission present/not-present testing but no where near enough to do radiography. With this crude setup I was able to determine that 1.95V is the minimum filament emission voltage. Below this point, while the filament is glowing quite bright, no x-rays are produced. It should be noted that because of the pulsed nature of the DC supply and very low levels of x-ray flux produced I was able to use a standard SBM-20 Geiger Muller tube detector. The detector was faraday shielded with 1mm aluminium to rule out false positives from electromagnetic noise, and to reduce the response to very soft x-rays. Now I knew the absolute minimal filament voltage, and it isn't something absurdly low (like under 1.5V would be).<br /><br /><div style="text-align: center;"><u>Planning and Sourcing Parts.</u></div>Initial planning was done several years ago when I first decided that I would have a responsible use for a radiography setup. I would either find a suitable x-ray transformer and rectify and filter the output, or I would generate suitable HVDC via a common HVAC transformer such as an AC flyback or NST and then amplify the output voltage using a Cockroft-Walton Voltage Multiplier. I ended up going with the latter as X-ray transformers are expensive and hard to come by, where as CW Multipliers are inexpensive and easy to make, and while still rare, AC flyback transformers are a lot cheaper and easier to source. So, I knew what parts I needed; a CW multiplier, an HVAC transformer, an x-ray tube, a transformer driver, a variable voltage filament supply, an enclosure suitable for high voltage oil potting, and finally a remote trigger or controller for safety.<br /><br />The CW multiplier is easily made from parts available on eBay. If you derate the current, voltage, and capacity specifications on chinese eBay parts they tend to perform well. I chose a 66% derating factor. 30kV 100mA diodes and 30kV 3.3nF capacitors. The caps are actually right on spec capacitance wise, which is nice.<br /><br />A good friend of mine, Fiddy, came to me a few years ago asking about having custom AC flyback transformers made to order by a Chinese manufacturer. He was unsure of specifics of the design and wanted me to consult for him on the order. I obliged, requesting only a transformer from the resultant batch as payment. His transformers are quite excellent, and he still sells them from time to time. If you want one, contact him on 4HV.org or laserpointerforums.com , tell him Sig sent you. Anyway, I used his transformer for a few temporary projects over the years but saved it for use in my eventual x-ray machine build.<br /><br />The x-ray tube took the most time to actually track down inexpensively. A nice couple was selling off some things their father had after he passed, and decided to list two Toshiba D-138B Coolidge tubes on eBay at less than 25% the normal going rate as they did not know much/any information about them. SCORE!<br /><br />Container/enclosure is a $1 polyethylene bin from walmart.<br /><br />The transformer driver I actually picked up from eBay a year or two ago. It's an inexpensive chinese made Royer type parallel-LC oscillator designed for ZVS operation of an air-core coil for induction heating. It works equally well for flyback transformers if you size the primary coil correctly and watch the peak voltages and currents. I could have easily designed and built a better driver, but honestly you can't beat chinese-made eBay prices. My driver would have cost me twice as much in parts alone. This driver uses about 160W and outputs about 150W when connected to Fiddy's transformer, quite good efficiency. The peak voltage across the LC tank is about 30V when supplied with 13.8V input, and circulating current is over 150A. A good engineer knows when to use an off the shelf solution.<br /><br />For filament supply I am using my variable bench PSU, but I do have a variable dc-dc buck converter on order that will fill this role and allow for truly portable operation.<br /><br />Lastly, I picked up a very inexpensive radio controlled relay on eBay for use as a remote trigger controller. It allows for latching and non-latching operation and uses a 300MHz radio. It works great, has excellent range, and doesn't suffer any interference from both the EM noise from the HV power supply or the incident stray x-rays. I use it in non-latching mode for maximum safety.<br /><br />For HV insulation I am using Mineral Oil, which is available over the counter as laxative. Yes, I'm quite sure I got strange looks when I bought eight bottles of laxative. The things I do for science!<br /><br />Minor parts: I am using nylon strapping to secure and aim the coolidge tube, as it is nonconductive and durable. I'm using nylon 6-32 x 2" standoffs as mounting posts. All screws and nuts are 6-32 UNC, both nylon and steel. Nylon zip ties secure the AC flyback transformer. A folded thin polyethylene bag serves as additional primary-core insulation on the flyback as well.<br /><div style="text-align: center;"><br /></div><div style="text-align: center;"><u>Build Pictures!</u></div><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/I82iZCd.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/I82iZCd.jpg" height="300" width="400" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/rX5LkMy.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/rX5LkMy.jpg" height="300" width="400" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/t9UNoLK.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/t9UNoLK.jpg" height="300" width="400" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/AVQB42Q.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/AVQB42Q.jpg" height="240" width="320" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/45X4b9h.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/45X4b9h.jpg" height="240" width="320" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/kdlfIw7.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/kdlfIw7.jpg" height="480" width="640" /></a></div><br /><br /><div style="text-align: center;"><u>The Build is "Finished".</u></div>The build is essentially finished. Note all above photos are from before oil was added. I just have to install the DC-DC buck converter for the filament supply once it comes in and that's a 10min job at most. If I decide to implement Wehnelt bias then I'll have to dig in and sever the junction between it and the cathode, and then add a line from the Wehnelt pin to a new bushing, install a new bushing, and mount the Wehnelt supply. Probably an hour's job of tedious, but not hard work. I have ordered new X-ray intensifier screens though and I will see how the results are with them before I put in the effort, time, and money to add a Wehnelt bias.<br /><br />After all, you can have the best lighting rig in the world but if your camera is terrible then your pictures will be terrible!<br /><br /><div style="text-align: center;"><u>Radiography Awaits!</u></div>Well, my cameras are most certainly not terrible. In fact they're quite excellent, however since x-rays are not focusable with glass and are not directly observable with traditional cameras there has to be an intermediary device for converting X-rays into visible wavelengths. Enter the X-ray Intensifier Screen (XIS). (Un)fortunately the XIS I have been saving for nearly a decade is extremely old, from the 1950s or 1960s, and even more unfortunately it is a BLUE EMISSION type phosphor screen. The emission spectra seems to be mostly between 405nm and 450nm, with a peak around 425nm. It is also a "Rapid" screen, meaning it has very large granules of phosphor which will respond faster, resulting in lower exposure times at the cost of image clarity. While this is all well and good for using an actual film with good UV/NUV/Blue sensitivity, it is rather poor for use with a modern digital camera. Even when using my Full Spectrum camera, which can perceive UV through IR, the response will be much lower than if I had a GREEN EMISSION XIS because of the internal Bayer Filter on nearly all digital cameras which has twice as many Green Pixel Sensors than Blue or Red. Still, I'm a competent Photographer, I should be able to work around this, especially since I'm not x-raying living tissue, so dose (exposure time) isn't a concern. I have since ordered some new Green XIS cartridges in both the Fine and Regular speeds, which should greatly enhance results.<br /><br /><div style="text-align: center;"><b>My First Radiograph.</b></div><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/fYGj5zk.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/fYGj5zk.jpg" height="480" width="640" /></a></div><br />Here we see the internals of household mains electrical wall power switch. I hadn't even begun to determine what the right exposure times, anode current/filament voltage/X-ray flux, or positioning setup would be. Here I simply gave things a "best guess" and saw what resulted. Contrast isn't great, there's a ton of noise, the projected image is skewed, etc. As a photographer it makes me cringe, but upon seeing the raw image I was ecstatic! I had achieved a real radiograph. The culmination of years of planning and scrounging parts bore fruit! What was next was a tremendous amount of work...<br /><div style="text-align: center;"><br /></div><div style="text-align: center;"><u>System Limitations Impose Interesting Operational Paradigms.</u></div>I first began by leaving photographic parameters fixed. I needed to work out the radio-electric parameters. According to the basic principles of operation the Anode current is directly proportional to the X-Ray emission flux. Increasing the X-ray flux increases the brightness of the resulting XIS image, increases the contrast of the image (only between full absorb and full transmit regions, not the contrast gradient between different densities), and results in shorter exposure times. Shorter exposure times are one of the holy grails of photography, even more so for radiography.<br /><br />So, increase the filament voltage; boil more electrons off, increase x-ray output, decrease exposure time. That's all well and good in a professional x-ray unit where the capabilities of the HVDC supply meet or exceed the capabilities of the x-ray tube. Unfortunately, I didn't, and still to an extent don't know the capabilities of the x-ray tube. As such, my power supply cannot supply the full anode current the x-ray tube is capable of drawing. I found this out when during my careful study of and experimentation with the relationship between filament voltage and the resultant radiograph the penetrating ability of the x-rays seemed to diminish above a certain filament voltage. This is clear sign of a "sagging" HV supply. As the current draw increases the CW Multiplier is unable to fully charge its capacitors with the current available from the AC Flyback. The more output current is drawn, the less and less the capacitors are able to charge. The result is the output voltage from the multiplier drops. Less voltage on the Anode means that the resulting Bremsstrahlung x-rays are softer and softer as the peak photon energy drops. This can be useful for imaging low density or very thin subjects, but generally is undesirable as the lower the energy of the x-ray the more easily it is absorbed by living tissue, making the radiation even more dangerous. This is one of those times when you can say your device's bug is a feature, but it's really still just a bug. The only thing that determines if it is a bug or a feature is original intent. Any gamer can tell you that!<br /><br />Interestingly, while probing the upper end of usable filament voltage / x-ray softness I discovered a hard cutoff effect of the tube. At 3.0V filament the anode current draw is such that either the HV supply completely loads down below minimum B+ rating of the tube, or the x-rays are so soft that they cannot penetrate the envelope with sufficient flux to illuminate the XIS, or the XIS is unable to fluoresce at such a low energy illumination. Since I don't have a means of measuring the anode current or voltage directly I am unable to differentiate between these possible explanations. If I happen upon an analog galvanometer type milliammeter I will investigate further. For now the interest is merely scholarly as I am not going to rework or replace the HV supply, so I will have to live with these characteristics of the device.<br /><br />This leaves me with a usable filament range of 2-3V, with the apparent "sweet spot" between hardness and flux at about 2.65 Volts DC. X-Ray hardness at this point is sufficient for penetrating thin aluminium quite well, and the flux is at close to 85% of the observed maximum. Below this point I get harder x-rays, but must increase exposure time greatly. Above this point the x-rays get much softer, but the exposure times shorten moderately.<br /><u><br /></u><br /><div style="text-align: center;"><u>An Important Note about your Anode.</u></div>I feel I should take a moment to talk about another important limitation on the operation of x-ray tubes; anode dissipation. The anode has to be a tremendous amount of power flowing through it. More so, it has this power directly striking it. Interesting bit of knowledge; a thin piece of wire can conduct hundreds of watts of power supplying an electrode that is emitting a spark/arc/streamer, but if that same wire were to be the point at which the arc is emitting it will overheat and vaporize or melt very quickly. The thermal effects of ions and electrons are not to be underestimated. The tube's anode can only "sink" so much heat, and that heat needs to wicked away and removed from the system. The heat load also needs to be under a threshold that would cause damage to the target surface. In short pulse exposures the heat deposition rate can actually exceed the speed at which the anode material can move heat away from the target spot, which causes ablation and thermal stress on the anode. Given that my tube doesn't have a biased Wehnelt electrode and the fact that my tube is clearly sagging my power supply there is little threat of exceeding the thermal limitations of my tube's anode. Additionally, I have submerged the entire tube in electrically insulating yet thermally conductive oil, aiding removal of heat. If I add Wehnelt bias I will have to revisit the thermal performance, but I doubt it will be an issue.<br /><br /><div style="text-align: center;"><b>Well, without further ado, shall we see some more of my radiographs?</b></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/eI2Zczh.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/eI2Zczh.jpg" height="480" width="640" /></a></div>Here from L to R is a Bluetooth Audio Receiver, a wallwart SMPS, a bare double-sided PCB.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/x0qnGP0.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/x0qnGP0.jpg" height="400" width="300" /></a></div>Here is a glass vial of sodium metal (Na) chunks in mineral oil next to the SMPS above. The vial is on top of a small bismuth metal (Bi) ingot, and the SMPS is on an empty polyethylene wire spool.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/8ioH280.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/8ioH280.jpg" height="400" width="351" /></a></div>Here we can see the internals of a Mobius ActionCam mini-camcorder.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/hjWvz0W.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/hjWvz0W.jpg" height="300" width="400" /></a></div>Here we have a somewhat skewed image (in two axes) of a Kill-a-Watt meter. Despite the very noisy/grainy radiograph you can clearly make out the ribbon cable connecting the two boards and the display driver's ceramic potting compound on the center of the upper board.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/qwbV0YE.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/qwbV0YE.jpg" height="480" width="640" /></a></div>Here is the bottom half of my LCR/BJT/FET meter and tester. You can see the 9V battery, several potentiometers, and a microcontroller quite clearly. The blobby bit on the bottom right of the pcb is a ZIF interface slot which has a fair bit of steel in it.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/fxJKNRP.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/fxJKNRP.jpg" height="640" width="602" /></a></div>Here is a rather clear image of a radiotelemetry receiver unit. You can clearly see the AAA batteries, their contacts, the main PCB, and the internal wiring. I believe this image to show the maximum clarity achievable with my current XIS. The radio-electrical specifics of this exposure are that of my observed nominal operation point. You can see a good differentiation between the densities of the plastic, metal, battery internals, and pcb components. Any harder x-rays and the case would be totally transparent, any softer and the battery internals would not be visible.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/zrCbMxu.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/zrCbMxu.jpg" height="346" width="400" /></a></div>Here you can see a minimally enhanced "raw" image from my setup. In post processing I adjusted the histogram to maximize brightness, contrast, and correct for exposure errors. I intentionally left the channel data close to original so that the XIS color could be observed. &nbsp;Pictured in the radiograph is a precision 1ohm resistor mounted in an aluminium heatsink, on top of which is an EOL HeNe laser tube. You can clearly see inside the "cathode can" of the tube to see where the bore ends, something I've always wondered about. The spool of solder and zeiss lens wipe are illuminated by reflected blue light emitted from the XIS. I've been using the zeiss wipe as a focusing aide to assist with getting the focal plane where I want it since I'm using manual focus of a very wide aperture telephoto lens.<br /><u><br /></u><br /><div style="text-align: center;"><u>Looking Forward.</u></div>I have some fun times to look forward to with the two new XIS and buck converter coming in the mail in the next few weeks. Once they're all here I can position the x-ray unit, object to be imaged, XIS, and camera freely without being tethered to my workbench. This will not only enhance safety and ease of setup and use, but should result in clearer images as the focal plane of the camera will match the image plane of the XIS. I will be able to try first-surface projection as well as transmission projection (which was used in all of the above images). Eventually I plan to save up for RadMax lead sheeting which I can use to lead line a wooden box enclosure that I plan to build for the unit. This would allow me to be in the same room as the x-ray source. Perhaps I'll keep looking for a proper x-ray transformer and make a pseudo-professional unit out of my spare coolidge tube. After all, this build is more of a prototype than a finished project.<br /><div style="text-align: center;"><b><u><br /></u></b></div><div style="text-align: center;"><b><u>One last thing... a tribute to some great men of times past.</u></b></div>May my Grandmother and Mother never read this. I couldn't help myself. After finishing nearly fifty radiographs and completing all of the operational experimentation I could think to do I had one thing left to do. It was against my better judgement, and in fact I said all along I would never do it. I did carefully assess all the risks involved, and while it was and remains still a seriously stupid irresponsible shit-for-brains thing to do, it wasn't calculated to present a likely chance of injury. You probably already know what I am talking about and what I did. How could I not? Were you in my shoes would you have done differently? As much as I like to justify it to myself by reminding myself that all the greats... Roentgen, Tesla, Crookes, Coolidge, the Curies, and countless more did it too, it is glaringly clear that they did NOT know the risks, and I do/did. Still, time has passed since my... lapse in judgement... and no harm was done. I was lucky. That being said... <b>I am never fucking doing that again.</b> I felt like <a href="https://en.wikipedia.org/wiki/Louis_Slotin" target="_blank">Louis Slotin</a> the whole fucking time. Talk about instant regret. If you don't know who that is, click the link and learn about a great man who met a tragic end. Note; I placed aluminium plates on the x-ray output to filter out the most dangerous soft bremsstrahlung x-rays, leaving only the hardest rays. I also used full-body shielding of 2mm sheet steel to protect myself. I also cut exposure time to half that of normal. So, I present to you...<br /><br /><div style="text-align: center;"><b><u>"Hand Mit Ringen"</u></b></div><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/jhIqrFV.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/jhIqrFV.jpg" height="480" width="640" /></a></div><div style="text-align: center;"><div class="separator" style="clear: both; text-align: center;">Traditional negative image&nbsp;view:</div><div class="separator" style="clear: both; text-align: center;"><a href="http://i.imgur.com/uXbbYOl.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://i.imgur.com/uXbbYOl.jpg" height="478" width="640" /></a></div>43,825 Days Ago (120 years and six days) Wilhelm Roentgen took the very first Living Tissue Radiograph. He used his wife's hand, though, a matter which I would never attempt. No, I substituted in my hand instead. Never impose on others what you are unwilling to impose on yourself. No judgement placed on our forefathers and foremothers, for they knew not. You can see Roentgen's radiograph here: <a href="https://en.wikipedia.org/wiki/File:First_medical_X-ray_by_Wilhelm_R%C3%B6ntgen_of_his_wife_Anna_Bertha_Ludwig%27s_hand_-_18951222.gif" target="_blank">The First Radiograph</a>&nbsp;</div><br />By the way, I'm almost certain it was purely psychosomatic but for about an hour after I felt what could only be described as a UV burn on the area. There was no redness, no dryness, no changes at all to see. I've had real UV burns, this was far less verifiable, yet felt similar. The short duration and lack of visible changes leads me to believe it was not after all a soft x-ray burn. Also, more than the area in which I felt the sensation received equal, if not increased exposure. In any case reckless stupidity is out of my system, this was the first and <b>last</b> autoradiograph.<br /><br />Just a little update: It definitely was psychosomatic. No harm was done (miniscule stochastic effects aside). Also, main beam output seems to be about 100Roentgen/hr (30mR/sec)! This puts my total estimated received dose from the one and only exposure at about 125mR. That's 14 months of background radiation, with most of that being only to my left hand.<br /><br /><br /><br /><br />Matthttps://plus.google.com/116620987173229654069noreply@blogger.com10tag:blogger.com,1999:blog-8547964686533873941.post-92060541044214358342015-12-25T18:55:00.002-08:002016-01-21T19:26:01.680-08:00Sigurthr's Unified SSTC Data File - All the data you need to make your SSTCI keep getting a lot of nonspecific&nbsp;questions and comments on my old posts and videos for my SSTCs that ask the build&nbsp;specifics of my coils such as parts info, # of turns, etc. I always do my best to answer them but in general unless the question is something very specific like "Help, my X in my Y is/isn't doing Z" or "I can't get X part, will Y part work instead?"&nbsp;I can't provide very detailed responses. This is especially true with build parameters for tesla coils; many factors are interdependent, and many more have a huge range of flexibility. There's rarely ever single correct answer or value.<br /><br />For all these questions&nbsp;I point towards my Unified Data File, located here: <a href="https://app.box.com/s/k8lzrwzdgv0zeaowu395" target="_blank">Download Here!</a><br /><br />It contains the distilled essence of all my tesla coil builds. It has a fully detailed parts list that links to the exact preferred parts from reliable retailers so that there is no question about what parts to use. Simply pull up that part and if you can't or don't want to get that specific one, use the data on the retailer page to see what would be a good substitute. It has full schematics for all the essential parts of my tesla coils. It even has technical drawings and notes that I made of key points in the design and build process. Located in the included text files are detailed explanations and solutions of common problems and operational parameters too.<br /><br />So, in an effort to make the data file easier to find (as it was buried within my USSTCC post last year) I'm making this easily searchable post. Cheers, all!Matthttps://plus.google.com/116620987173229654069noreply@blogger.com5tag:blogger.com,1999:blog-8547964686533873941.post-85681742498209911542015-12-15T19:39:00.004-08:002015-12-15T19:43:48.466-08:00Tesla Coil Related Q&A - First edition.I get tons of emails asking for technical help regarding Tesla Coils. I'm always happy to answer questions that come my way. I'd like to share the info with more than just one person though, as I get a lot of repeat questions, and even besides that the answers often get buried deep in message boards or in an inbox. So, here's some responses from people who have given their OK to share our correspondences.<br /><br />Here's a bit of answers to construction questions that were asked. The format of the emails wasn't great for direct posting, but the format of my replies were pretty good for such.<br /><br />The first step for your design planning, given your goals and flexibility is to examine your primary goal of output size, and the unwritten attributes attached to it.<br /><br />-You state that you want an arc/streamer length of at least 1 foot and are aiming for about 1kW power level. This immediately means you want an interrupted SSTC or a higher power CW SSTC.<br /><br />OPERATIONAL MODE<br />--------CW Operation; Not Interrupted/No Interruptor Added------------<br /><br />---Running CW (continuous) gives a short, fat, SILENT hot "flame" type discharge that lights up tubes and transmits power readily. CW yields a painless discharge (other than thermal burns) that is safe for powering tubes and other wireless power transfer devices.<br /><br />---Approximate output arc size per power is 4-6" per kW (1000W) for a coil running in the 100-450KHz range off of fully filtered DC. This is the only mode of operation that can play fully polyphonic hifi audio.<br /><br />---Unfiltered/partially filtered DC causes a 60 or 120Hz Staccato which increases arc length per kW to around 8-11". Note that the arc will have a loud (not SGTC type "loud" though =P ) low buzz to it similar to hum on a guitar amplifier or if you've seen a video of someone playing with a MOT stack arcing. You can still power tubes and other wireless devices, but power transfer will be around 50%-90% that of fully filtered DC CW. This is determined by the load impedance of the coil (primary impedance at resonant frequency) and the amount of filter capacitance placed after the AC-to-DC rectifier bridge (not inverter bridge) - use a low pass filter ripple formula (ask if you need). -Note that you should never let a tube come in contact with the output streamers when using unfiltered, partially filtered, or interrupted modes.<br /><br />---The less filter capacitance used, the larger the streamer/arc scales in comparison to full CW, the less heat generated, the less average power transmitted, the louder the output, the more painful the output is for direct contact.<br /><br />--- Using no filter capacitance yields the greatest streamer length for CW operation (and it isn't technically CW as it isn't constantly running) but causes stress on the feedback system and has the potential to stall randomly as there is no feedback signal every time the mains voltage crosses zero. This is pretty much impossible to predict as it has too many variables, but it should be mentioned. This is easily fixed if it occurs by adding a single capacitor across the DC rails.<br /><br /><br />---------Interrupted SSTC Operation (aka ISSTC)--------------------<br />---Running interrupted means you use an interrupter device to pulse the gate drive on and off for varying amounts of time (PW) at varying rates (PRF). Typical rates are 1Hz to 1KHz, with durations ranging from ~15% ON/85% OFF to 95% ON / 5% OFF. Most people use a 555 timer for this job as it is cheap and easy to implement, however a 555 timer is severely limited in PRF range and cannot do PWs below 51% ON. Additionally, if you wish to keep it 50/50 ON/OFF you can't do this with a 555 timer as it is only evenly split at a small fraction of the PRF range. If you want complete control over interrupter operation you either need to run several timer chips in a complicated arrangement with other logic chips, or you use a microcontroller (uC) like an ATTiny or Arduino. I went for the arduino/ATTiny route as you can really customize what you want to do rather easily.<br /><br />--- Using a common 555 timer based interrupter design you can get approximately ~30-700Hz PRF @ ~50-80% PW. This would give a low buzz to a piercing whine, with varying brightness and streamer length. Using a microcontroller you can have just about any PRF and PW combination you can think of, and control them independently.<br /><br />--- Increasing PW gives hotter, brighter, whiter streamers. Low PWs give purpleish fainter streamers like that of a small SGTC. PW is proportional to power draw and heat generated.<br /><br />--- Streamer length to PRF follows a nonlinear curve dependent greatly on atmospheric conditions and resonant frequency. The rule of thumb is above 300Hz streamer length decreases quickly. Most coils have maximum output length around 70-220Hz. Low PRFs can have just as long or longer lengths, but it varies greatly on numerous factors. A new type of SSTC called a "QCW DRSSTC" maximizes this phenomenon. I won't go into them as it isn't applicable here.<br /><br />---Since you have no size constraints and have limited engineering experience I'd recommend an Arduino over an ATTiny, if you decide you want more than what a 555 can offer. I do have an arduino program written up for use on ATTiny uC's and can easily modify it for an Arduino if you would like. I just have to change which pins do what in the code, the core code is the same.<br /><br />---The better the DC filtering; the hotter, brighter, and longer the output streamers will be when using an interrupter.<br /><br />HARDWARE:<br />Firstly and foremost: Bridge Inverter.<br />--- Half bridges are simpler, easier, and cheaper to build, but only have half the output of a full bridge, this directly translates to output length! You can counter this by adding a voltage doubler to the mains input, and doubling the amount of filter capacitance you use. Whether this becomes cheaper than building a full bridge depends on your ability to source capacitors for the voltage doubler. A doubler is certainly simpler and easier than going to a full bridge inverter, and it can be added later on at any point *if you plan ahead and size your bridge capacitors accordingly*.<br /><br />---I recommend a half bridge designed to account for future use of a doubler. NOTE: Change of parts listed in Unified Bill of Materials: "DC Bus Bridge Rectifier: GBPC1502-E4/51-ND" to "GBPC1506FS-ND" (Digikey). This is the same change one has to do if they wish to run the coil on 240V instead of 120V.<br /><br />--- Bridge Heatsinking. Super important, too big is never too big. Too small becomes expensive fast. Heatsink material should be extruded aluminium with the plate thickness being 1/4" or thicker. Fins should be 1/2" or longer. Overall minimum dimensions should be 4"x 4" per kW for half bridge, or double that for full bridge. EVR used to sell heatsink material at excellent prices. Email or call them to see if it is still available (it should be, but always contact before placing an order as I once ordered and found out they didn't have any at the time due to shop issues).<br /><br /><u>Individual Q&amp;A</u><br /><blockquote class="tr_bq">what determines the power? The driver?</blockquote>For example, in a SGTC you have the NSTs, Rotary gap/ static gap. Those determine power---but on a solid state TC you have one Transformer, a step down to 2A {in your design}.<br /><br />I thought I covered it in the unified file but I could have glossed over it, it's been a while. In a (SR)SSTC the power draw is determined mostly by the primary impedance. Impedance varies by frequency, and is thus determined by the inductance of the primary. Here's a practical approach to it:<br /><br />XL = 2pi*f*L, and we will be using Peak values, not RMS, as in a SSTC primary voltage is a square wave, even though the current is a sine. So, assume for example 500KHz and 15uH, half bridge on 120Vac (177Vpk). Half bridge means only half voltage is applied by the bridge, so 89Vpk. XL = 6.28 * 500k * 0.000015. XL = 47.1 ohms.<br /><br />So, a 15uH primary running at 500KHz will have an impedance of at least 47 ohms. In reality it is slightly more due to leakage inductance (stray/unavoidable lengths of wire/conductor/leads/traces) and pure ohmic resistance. In addition, you're usually concerned with RMS power when building a coil as your limitation is your power source, not your output power (snuff you FCC!). The coil only draws full load under ground arc, and coupling limits power draw further as it is the second strongest influence on power. I like to underestimate impedance, so you have a larger safety margin. So let's use 45 Ohms continuing our example. Likewise, we'll ignore the reduced draw from coupling (it will never be 100% for air-core transformers like a TC, so extra safety margin built in there). I = V/R; Ipk= 89/45; Ipk= ~2Amps. The primary will draw 2Apk. Now even though the voltage across the primary is half, it is in series with the mains, and currents in series are identical. There's no transformer action in dropping half the voltage in a half bridge, so 2A out means 2A in. Input current will be Primary current (Ipri) plus the effect of power factor. Power factor in most SSTCs I've built is between 0.35 and 0.8 (this is because converting to DC and filtering inherently creates poor power factor, and then you're presenting an inductive load on top of that). Coils running on unfiltered DC have substantially higher power factors. I just use 0.6 as a guideline. Iinput = Ipri/PF. Input current should be around 3.3A, so input power would be around 400Wrms or around 600VA. Output power is of course around 180W. If you add power factor correction to the mains input you'll reduce input consumption and improve efficiency, but not increase output power.<br /><br />So, to increase power what can we do?<br />1) Lower f0. Limited by secondary size.<br />2) Lower Lpri. Limited by coupling (lower L = lower coupling).<br />3) Increase Vin. Limited by component ratings.<br />4) Use a Full Bridge. Limited by budget, size constraints.<br /><br /><blockquote class="tr_bq">"When building the Gate transformer do I need a signal generator?"</blockquote><br />Nope! You just need to be able to focus on the task at hand with minimal interruptions. There's a point where you've determined which wire is which but have not yet actually marked it as such, an interruption or loss of concentration here usually ends in disaster. It is VERY easy to double check the construction of a completed GDT when you have a 2 channel scope though. You will need a signal of some kind, even if it's just touching the GDT primary leads to a battery momentarily (requires a DSO to use this signal source).<br /><br /><blockquote class="tr_bq">"How do you choose a resonant frequency? Is 300KHz reasonable."</blockquote><br />Resonant frequency determines arc length per kW (longer streamer the lower the frequency), some of the heating in the bridge (lower frequency is less heating), some of the load on the logic controller / driver (lower freq, the less load), and most importantly the physical dimensions of the secondary. Yes, 300Khz is reasonable, but I would recommend you aim for around half that for best bang/buck when size isn't a factor.<br /><br /><blockquote class="tr_bq">"I would like a TC that doesn't sound like its sputtering. How do I pick that?"</blockquote><br />A coil's sound is determined by the RF envelope, which is determined by operational mode (CW/Interrupted) and interrupter specs (PW and PRF). CW on well filtered DC is nearly silent, with only a lowly audible hiss ("shhhhhhhhhh") sound. Poor DC filtering or no filtering causes a very loud Buzz at the mains-rectifier frequency and many, many harmonics. It will sound like a harsh "BRRRRRRRR" tone. Interrupted mode coils vary greatly in volume and tonal character based on the specifics of their pulse width and pulse rep frequency. A shorter duration ON pulse has more harmonic content and thus sounds brighter, where as a longer ON pulse close to 50% duty sounds duller and warmer. Even if average power draw of the coil is continuous through the PRF range, the volume will chance because we humans perceive sound volume nonlinearly with respect to frequency.<br /><br /><blockquote class="tr_bq">"I noticed you omitted a 555 timer from your design."</blockquote><br />555 timers are far too unreliable and imprecise for use in the actual logic controller / driver. They were originally used with a feedback system as an oscillation starter, which ironically does absolutely nothing at all when used with an interrupter, as the interrupter does this role flawlessly. They can still be used for an interrupter though. When used on a CW coil (when not used for interruption) it causes more problems than it is worth because the idea was to provide a signal that should get overridden when real feedback from the coil running takes place. The problem is that how do you ensure it gets overridden and it doesn't override the feedback signal? There's no good answer, and likewise those coils never ran reliably. CW coils without an interrupter still require an oscillation starter sometimes. It really isn't an issue though as it only requires one switch and a resistor OR a change in startup procedure for the coil. There's a whole section on it in my USSTCC unified data file, and it is on the main schematic.<br /><blockquote class="tr_bq"><br />"Now let me understand some components, I have decided to use your logic board.<br />What exact piece of the puzzle does this include? What other components do I need to design and build myself. "</blockquote><blockquote class="tr_bq">"I will need my own inverter correct? I will need to rectify the ac current coming from my variac.</blockquote><br />Your listed step down transformers, are those the only ones I need? 2A step downs?"<br />Okay, before listing off what it includes, let me state plainly what it and its associated files do NOT include, in other words things you need to source and build yourself:<br /><br />1) Bridge Inverter. *<br />2) AC power cord for Bridge<br />3) AC power cord for USSTCC's step-down transformer<br />4) Secondary Resonator<br />5) Primary Coil<br />6) hookup wire<br />7) GDT; wire and core *<br />8) secondary topload (doesn't have to be fancy - salad bowl!)<br />*note I do have most of the suggested parts for these listed, things marked with asterisk have detailed instructions and parts lists.<br /><br />What does the USSTCC Board include? It includes one bare USSTCC printed circuit board and all documentation required for proper construction of a working SSTC and lifetime Q&amp;amp;A help service. You already have this documentation, and you're already using the Q&amp;amp;A service, hehe.<br /><br />Now, a better question; "What parts of the 'SSTC puzzle' does the completed USSTCC encompass?"<br /><br />The USSTCC board takes care of the entire Low Voltage power supply supply, feedback processing circuitry, signal amplifier and splitter, add-on (interrupter &amp;amp; modulator) interfacing, and Gate Drive requirements of any SRSSTC operating in any mode. You add a bridge inverter, GDT, and completed resonator and have a fully working SSTC. All of the recommended parts for the bridge inverter and GDT are listed in the BOM files with their ordering numbers direct from reputable suppliers.<br /><br />The only electrical components you need to pick and determine source of yourself are the AC power cords/plugs, GDT wire (22ga solid core, insulated (not enameled) to &amp;gt;300V, 2 or 3 colors), rosin core eutectic solder, and primary coil wire (10ga finely stranded copper, insulated to &amp;gt;300V - silicone if possible, cheap on eBay used for RC hobbies).<br /><br />The physical components you'll need are coilforms, polyurethane, various mounting hardware (screws, nylon standoffs), etc.<br /><br /><blockquote class="tr_bq">I've never used an arduino before, whole new can of worms.</blockquote><br />Re: Arduino; easy as pie, really. You pick up an Arduino board, install the drivers and IDE (operating) program on any windows pc, I email you the code, you copy paste it into the IDE, plug in the Arduino to usb, hit upload, done. Then it's just a matter of attaching two 25k pots, a resistor, and the fiber optic transmitter. The F.O. receiver connects right into the USSTCC expansion port. Fiber runs between the two and just inserts in the F.O. parts. High end interrupter completed and installed.<br /><br /><blockquote class="tr_bq">Can I use thermal paste like arctic alumina instead of sil-pads?</blockquote><br />Arctic alumina works, but only in conjunction with silpads, not instead of; it can't withstand the high voltages reliably.<br /><br /><blockquote class="tr_bq">Can I just ground the TC to mains earth at the socket?</blockquote><br />While some people swear by it, it isn't safe and doesn't provide very good performance to do this without at least carefully checking the mains earth wiring on the electrical branch you'll be using and adding RF balancing nodes to that mains branch. You place correctly rated class-Y and class-X capacitors between Line and Earth (Y), Neutral and Earth (Y), and between Line and Neutral (X) which allows RF to have an equal potential across the three conductors, essentially allowing any common mode filter to keep the RF out of where it shouldn't be. One of these nodes should be placed directly at where the coil gets plugged in, and one should be placed at where any sensitive equipment is to be plugged in. You should still unplug any equipment you can't afford to replace. This is still second rate compared to a proper RF earth ground line.<br /><br /><blockquote class="tr_bq">My 4046PLL based SSTC isn't behaving</blockquote><br />It's a well known and documented flaw in the using of the 4046PLL for SSTCs. It's finicky as hell and sometimes you have to adjust the lock range and middle point while the coil is running just to get it going again. Make sure none of the coil's surroundings have changed too, as this will change the loaded resonant frequency of the secondary. Likewise, the resonance point changes with operating voltage, so mind that as well.<br /><br />It's likely locked onto an upper harmonic. Unfortunately this is a tricky problem to solve, as I mentioned before the 4046 is far out of it's designed application in SSTC use *(this is why myself and most others abandoned the chip for SSTC use. The big boys moved on to FPGA software based PLLs, and I went oldschool with VCOs). This problem pops up most times on working coils when someone changes the PLL chip as it is often triggered by small variances that are well within spec. Switching manufacturers or even batches has been known to prompt it.<br /><br />One thing you can do is disconnect the bridge, and set the center point of the PLL's VCO to the known resonance frequency of the secondary. Then install a bandpass LC or LCR filter network between the feedback source and the feedback input of the driver. You should set the bandwidth of the filter to be as close to the bandwidth of your secondary as possible (if known). You can empirically measure an estimation of the bandwidth by scoping the secondary connected to a low power variable oscillator (or remotely monitor power draw with coil running at full power). Otherwise you can use a rule of thumb guess, but I'd need to know the f0 to give you a ballpark figure. But basically you see you're unable to rely on the PLL's intrinsic loop filter to reject harmonics and actually lock on the desired frequency, so you have to help it along with an external filter. If adding the filter does not immediately remedy the issue the next step is to place the entire driver inside a faraday cage and see if that helps.<br /><br />There's a trick that sometimes works (far less well than the bandpass filter, but doesn't require the use of phase shift compensation like a filter - I might have forgotten to mention that above; if your filter network induces a sizable phase shift you'll need to correct it via additional series passive reactive components.) where you set the PLL sweep range to +-(1/2*Phi*Bandwidth). So if your f0 is 390KHz, and your bandwidth is 20KHz, you'd have a 32KHz PLL sweep range centered on 390KHz (0.5*1.618*20). The idea being there are no natural harmonics within this range for the PLL to lock to. It isn't bulletproof though.<br /><blockquote class="tr_bq"><br />My CT feedback isn't working, and I've tried reversing polarities!</blockquote><br />Don't use a parallel resistor in the secondary of the feedback transformer; this makes it a CT current transformer, and SSTCs use in-phase feedback, not 90deg shifted feedback like DRSSTCs. Remove that resistor and place a roughly 10-100k one in series with the secondary side to make it a VT (voltage transformer), then feed that in to the antenna in connection. If you ground the opposite terminal of the VT/CT secondary it forms a DC short which prevents startup oscillation (normally achieved by noise) without manually pulling the Enable line on the UCCs (modulation inputs) to Vcc. So leave the other terminal of the VT floating or use a capacitor to tie it to ground. Or you can use an interrupter or a momentary push button switch to ping the enable circuit. There's a schematic in my USSTCC files showing it.Matthttps://plus.google.com/116620987173229654069noreply@blogger.com1tag:blogger.com,1999:blog-8547964686533873941.post-86579798347872547582015-11-21T17:23:00.001-08:002015-11-21T17:31:09.094-08:00Testing the DY87 Thermionic Diode for X-Rays and looking forward to future RadiographyI've been wanting to get a simple X-Ray source together for years now, but never quite was able to source the crucial component; an X-Ray Diode (vacuum tube). The official/correct tubes are extremely expensive and hard to acquire, as modern ones are illegal to own/operate without a license and credentials. This means that only old/vintage/used tubes are acquirable, and they tend to be very expensive and hard to come by given their rarity and fragility. Fortunately, many old general purpose vacuum tubes (thermionic valves) are capable of producing x-rays when operated in cold cathode mode. <br><br>Years ago I had purchased an old medium power vacuum diode in hopes that I could get some results, but sadly it lost its hard vacuum before I acquired it. It still had a decent vacuum inside, but not enough to allow electron acceleration sufficient for x-ray production via anode bremsstrahlung. I put the project as a whole on the back burner for quite some time having such a sour experience of wasting money on an expensive tube. <br><br>Recently it came to my attention that a very easy to source and inexpensive tube, the DY87 / 1S2A HV vacuum diode, could produce x-rays reliably from even lower voltage HV supplies. I quickly sourced such a tube and gave it a test: <br><br><center><iframe width="560" height="315" src="https://www.youtube.com/embed/p4NLibtZ590" frameborder="0" allowfullscreen></iframe></center> Here you can see my quickly assembled test rigging... <div class="separator" style="clear: both; text-align: center;"><a href="http://3.bp.blogspot.com/-dOs_RIBaBHY/VlEZzq1KDMI/AAAAAAAAAJw/FDBAVjWJA5U/s1600/PB212379-2.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://3.bp.blogspot.com/-dOs_RIBaBHY/VlEZzq1KDMI/AAAAAAAAAJw/FDBAVjWJA5U/s320/PB212379-2.JPG" /></a></div><br>Given that <50kV was the HV source and thus <50KeV is the maximum photon energy, the thin 1.2mm steel plate and short distance is all that was needed for shielding of such a short duration test. <br><br>An important note is to use an RFI-shielded Geiger Counter for detection of these xrays, as the HV pulses will create copious RFI which causes false triggers in standard geiger counter circuits. Shown on the left is a Kvarts DRSB-01 that I repaired and enclosed in a 1mm thick Aluminium case which functions as a soft-beta shield and RFI blocking Faraday Cage. The DRSB-01 doesn't use a regulated HV supply so it cannot be used for measurements of radiation, but it functions well for detection of radiation. <br><br>Here you can see where I stood in relation to the tube, and the HV source I used... <div class="separator" style="clear: both; text-align: center;"><a href="http://3.bp.blogspot.com/-wrJj6xuS2Mo/VlEX9A-b2aI/AAAAAAAAAJk/2rpOPpH_4KQ/s1600/PB212380-2.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://3.bp.blogspot.com/-wrJj6xuS2Mo/VlEX9A-b2aI/AAAAAAAAAJk/2rpOPpH_4KQ/s320/PB212380-2.JPG" /></a></div> Even with the low sensitivity to soft X-rays of my 1mm-Al shielded SBM-20 Geiger Tube I am quite confident that my X-ray exposure was quite minimal. That being said I won't be moving forward with this project until my remotely triggered relay arrives in the mail. I plan on doing some radiography tests with an X-Ray Intensifier Screen I purchased many years ago from George Dowell. I will operate the HV remotely from out of the room this way, and take several long exposure shots to maximize safety and image throughput.Matthttps://plus.google.com/116620987173229654069noreply@blogger.com0tag:blogger.com,1999:blog-8547964686533873941.post-6674095664131281392015-02-24T16:44:00.002-08:002015-02-24T16:45:24.694-08:00Updated DRSSTC Calculator ProgramHey folks, just a quick note for now. I received a report that the DRSSTC Burst Calculator I wrote last year (<a href="http://sigurthrenterprises.blogspot.com/2015/01/sigurthrs-drsstc-calculator.html">http://sigurthrenterprises.blogspot.com/2015/01/sigurthrs-drsstc-calculator.html</a>) was still throwing missing .DLL errors for some users. I've recompiled the program in a much better IDE which should finally solve the errors people have been getting. My sincerest apologies for any troubles anyone might have had. I've also updated the contact info in the README file. Please, if anyone has any trouble, spots any errors, or has any questions, don't hesitate to let me know! I'll do my best to help wherever and whenever I can. Sincerely, SigMatthttps://plus.google.com/116620987173229654069noreply@blogger.com0tag:blogger.com,1999:blog-8547964686533873941.post-8037676943626895152015-01-30T16:15:00.001-08:002015-01-31T07:20:20.466-08:00Wilson's Theorem, Prime Numbers, C++, and finding a livable IDESo, every now and then I discover tidbits of academically interesting information that inspire me to accomplish something. More often than not I give it a valiant effort, and shelve the project at some random stage of completion, uncertain if it will ever be finished.<br /><br />A few months ago I saw Numberphile's videos on Wilson's Theorem. This was such an event. Wilson's theorem basically states that you can determine if a number is prime by seeing if the factorial of one less than the suspected prime, plus one, is divisible by the suspected prime. The formula would look like: ((n-1)! + 1) % n = 0.<br /><br />To give a simple example: n = 3.<br />3 - 1 = 2.<br />2! = 2.<br />2 + 1 = 3.<br />3 % &nbsp;3 = 0.<br /><br />x! is a way of writing "factorial of x". Factorial means to multiply up all the numbers prior to and including the number in question. 2! = 1 x 2. 3! = 1 x 2 x 3.<br /><br />% is modulo, which means to find the remainder of. The extrapolation of this would be 3 / 3 = 1, so 0 remainder. 7 % 3 = 1. (3 goes into 7 twice, leaving a remainder of 1.)<br /><br /><div style="text-align: center;">Here's Numberphile's Videos on Wilson's Theorem:</div><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://ytimg.googleusercontent.com/vi/eZUa5k_VIZg/0.jpg" frameborder="0" height="266" src="http://www.youtube.com/embed/eZUa5k_VIZg?feature=player_embedded" width="320"></iframe></div><div style="text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://ytimg.googleusercontent.com/vi/AiplrfFB6h0/0.jpg" frameborder="0" height="266" src="http://www.youtube.com/embed/AiplrfFB6h0?feature=player_embedded" width="320"></iframe></div><br />I scribbled down the rearranged formula for Wilson's Theorem on a piece of paper when I saw the video. Then the next day I wrote up some pseudocode to give a general outline of the logic needed to process the formula. Then I put it on a shelf and left it, for months.<br /><br />I came back to the piece of paper a few days ago and decided it sounded like something to look into since I would be programming again shortly (see Arduino Binary Clock projects, serial internal oscillator one finished, standalone upcoming at time of writing this). After a few hours of writing up the basics of the program in C++ (my preferred computer language) with VisualStudio2013 (my very much NOT preferred IDE) it became painfully apparent things weren't working well. Why was this? Well, Wilson's Theorem uses incredibly large numbers because of the factorial function. By incredibly large numbers I mean that simply doing 22!, which is needed to test if 23 is prime (it is) exceeds the intrinsic capacity of a 64bit computer. I realized that I would need a method of working with such large numbers, a guestimation of which is 2^2048, on a 64bit machine.<br /><br />Lots and lots of searching, asking friends, and plugging away yielded that there are special libraries for this exact purpose. Mostly they're used in cryptography for encryption and data hashing. I found several libraries that looked like they would work, but only one of them had a downloadable file that was recognized by my Windows 8.1 system; BigInteger. Many more hours of tinkering and searching around I find that it is not precompiled and needs to be directly added to your project and compiled with it or compiled in your IDE or on a Unix computer for use. VisualStudio2013 was not letting me just add the files and then compile with my project, so thus began the hunt for a better IDE.<br /><br />I asked my friends and asked online on one of the technology forums I am a veteran of. I settled on Orwell's Dev-C++ as it looked to be a good fit from both my own investigation and external recommendations. I had also tried out Code::Blocks and CodeLite, but they didn't seem as intuitive or pliant to my needs. A few more hours of getting myself accustomed to the new IDE and some exceptional pointers from my professional programmer buddy Jack and I was up and running.<br /><br />Here's the grand result: Two executables for windows machines which use Wilson's Theorem.<br />1) Wilson's Theorem Primality Checker - this lets you enter a number up to 2,147,483,646 ((2^32)-1) [not recommended doing so though, haha] and it will tell you if what you entered is a prime number or not.<br />2) Wilson's Theorem++ - this lets you enter a number up to 2147483646 ((2^32)-1) and it will list off every prime between 1 and that number as it finds them.<br /><br />I'd stick to values below 20,000 unless you want to leave your pc running a long time as values over 5000 take a bit to process. You'll be happy to know you can just "X" out of the command window if you're tired of waiting for it though. It also only uses a single core of your processor, so it shouldn't crash any modern multi-core system.<br /><br /><div style="text-align: center;">Download Links:</div><div style="text-align: center;"><span style="color: cyan; font-size: x-large;"><a href="https://app.box.com/s/xobb25xbs18pd5q0pl2la3a06nt8mks4" target="_blank">Wilson's Theorem Primality Checker</a></span></div><div style="text-align: center;"><span style="color: cyan; font-size: x-large;"><a href="https://app.box.com/s/0msodk8nahctylzmnw7u584rpzmsody9" target="_blank">Wilson's Theorem++</a></span><br /><br /><br /></div>Matthttps://plus.google.com/116620987173229654069noreply@blogger.com0tag:blogger.com,1999:blog-8547964686533873941.post-5311758783682343212015-01-25T18:51:00.003-08:002015-01-25T18:51:54.637-08:00Arduino Binary Clock - Serial OutputAn upcoming project of mine is a standalone Numerical Sexagesimal Binary Clock that will run on Arduino, and use a high accuracy RealTimeClock to keep time. In the mean time I've worked out a simple program that uses the UNO's onboard 16MHz system clock (oscillator) to keep time. The resultant one Hz events are tallied sexagesimally and then converted to binary. Both binary and decimal outputs are sent to the serial line for viewing on the arduino compiler's serial monitor.<br /><br />Nearly all, if not all currently made "Binary Clocks" use Binary Coded Decimals (BCD) to display time. BCD is when you use binary for each digit of a sexagesimal time. This is popular because it is much simpler to implement, most people can read easy since all the "binary" numbers are low values, and it adapts easily to graphical and LED display.<br /><br />Here's an example of Binary Coded Decimals: 1's represent Lit LEDs, 0's represent Unlit LEDs<br /><br />00:00:01<br />00:01:00<br />01:11:00<br />00:11:01<br />-----------<br />02:37:09<br /><br />You read each vertical column as if it were a true binary number and then assemble the sexagesimal time code. So, the above timestamp is assembled from the binary numbers:<br /><br />0000 or 0<br />0010 or 2<br />0011 or 3<br />0111 or 7<br />0000 or 0<br />1001 or 0<br /><br /><div style="text-align: center;"><b>This is not how my binary clocks will work.</b></div><b><br /></b><div style="text-align: center;"><b>My clocks will output true binary time; 02:37:09 will be displayed as 0010:100101:001001.</b></div><br />So, check back in the future for the project post for my standalone arduino binary LCD clock. Until then, enjoy messing around with this bit of code!<br /><br /><div style="text-align: center;"><a href="https://app.box.com/s/axk18xo8zopsh71jkwvey77mnmlizc17" target="_blank"><span style="color: lime; font-size: large;">Download Source Code Here</span></a></div><br />NOTE: You set the time at point of compiling and uploading, but the arduino doesn't actually begin keeping time until the serial monitor is opened. So, set the time about 30sec ahead, upload, and then open the serial monitor just before it is the set time. On my system it takes about two seconds for the monitor to initialize and the arduino to sync up to it. I use www.time.gov for reference. You could also just set the time for the next minute and watch as it rolls over, then start the serial monitor; this would be less accurate by a few seconds + your response time.<br /><br />BIGGER NOTE: The arduino's intrinsic time keeping ability is heavily limited by the accuracy of the 16MHz clock. Mine is slow by about 5 seconds per hour, or 2 minutes per day. I've added a few lines that wait for until the arduino has been running for 12 hours and the current minute is near the end of the hour, then it advances the minutes one minute to compensate. Depending on what time it was when you uploaded and started the serial monitor it may have to wait an extra hour until correction. So, this doesn't really fix the inaccuracy problem, but it lessens it greatly, from 2 minutes per day down to no more than ten seconds per day. Your mileage may vary. There's a reason this was just an exercise in getting the decimal to binary conversion working well.Matthttps://plus.google.com/116620987173229654069noreply@blogger.com0tag:blogger.com,1999:blog-8547964686533873941.post-29281830150039154002015-01-05T19:29:00.005-08:002016-01-16T11:49:14.628-08:00The USSTCC: Universal SSTC Logic Controller<div style="text-align: center;"><b><span style="color: lime; font-size: large;">Sig's Universal SSTC Logic Controller - The USSTCC!</span></b></div><br /><ul><li>A universal solution to the question of "What driver should I use for my Solid State Tesla Coil's Half or Full Bridge Inverter?".</li><li>Smaller footprint than competitors yet can drive even the largest TO-264 Power Switching Devices.</li><li>Operates on either Secondary Base CT (current transformer) or antenna based feedback, for maximum flexibility.</li><li>Very High Noise Immunity - will operate fine even in "floating ground" implementations.</li><li>Greatly reduced parts count. This means it is inexpensive to build and has less points of failure!</li><li>Tested Frequency range of 100KHz to 1MHz! *Additional heatsinking may be required for very high frequencies.</li><li>Automatically locks on to the resonant frequency and drives the inverter in sync even under dynamic loads!</li><li>Features a powered Expansion Port so you can branch out and add additional functionality like Modulation!</li><li>Operates from 12VAC to 24VAC or 14VDC to 33VDC at 2 Amps input current. Power supply not included.</li><li>High Quality Professionally Made Printed Circuit Board with Gold-Plated Through-Holes and Solder Pads.</li><li>All Through-Hole construction and Clearly Labeled Silk-Screened Solder Mask for EASY SOLDERING!</li><li>High Quality Screw Terminal Input and Output connectors for easy assembly to or disassembly from your Tesla Coil.</li><li>Pre-Drilled Mounting holes on Printed Circuit Board.</li></ul><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-j68muyF0xQs/VKtVwTBHkPI/AAAAAAAAAHU/jFcDD2ALVbY/s1600/boardphoto.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="http://2.bp.blogspot.com/-j68muyF0xQs/VKtVwTBHkPI/AAAAAAAAAHU/jFcDD2ALVbY/s1600/boardphoto.JPG" width="320" /></a></div><div><br /></div><div><br /></div><div style="text-align: center;"><a href="https://app.box.com/s/k8lzrwzdgv0zeaowu395" target="_blank"><b><span style="color: red; font-size: x-large;">USSTCC Data File Download</span></b></a></div><div><br /><div style="text-align: center;">The data file includes invaluable information, schematics, diagrams, and instructions related to building your very own <b>S</b>olid <b>S</b>tate <b>T</b>esla <b>C</b>oil, even without the use of the USSTCC board.</div></div><br />The user is required to possess and exercise a working knowledge of proper soldering technique and understanding of basic electronics principles. The user will need to know how to identify components and their orientation markings. NO BOARDS COME ASSEMBLED.<br /><br />No Tesla Resonators, heatsinks, mounting hardware, current transformers, basic tools, or wiring is included with any options. The User must provide all the necessary equipment and supplies for proper construction and installation.<br /><br />Users must exercise caution and observe safe electrical guidelines and codes when wiring up the completed controller board and any inverter (half or full bridge). Buyer assumes all responsibility for the use, installation, and construction of the products featured here. Risk of injury and even death is always present when working with high voltages.<br /><br />Return Policy:<br />Returns will only be given for unused, unsoldered, new, and undamaged boards and components.<br /><br /><div style="text-align: center;"><b><u><span style="color: cyan;">These boards are still available for purchase at $15USD/board. Please send email to purchase. Payment by Paypal ONLY.</span></u></b><br /><b><u><span style="color: cyan; font-size: large;"><br /></span></u></b><b><u><span style="color: lime; font-size: large;"><a href="mailto:RomSigurthr@gmail.com" target="_blank">Click to Inquire about Purchasing a USSTCC Board</a></span></u></b></div><div><br /><div style="text-align: center;">Video of USSTCC in operation:</div><div class="separator" style="clear: both; text-align: center;"><iframe allowFullScreen='true' webkitallowfullscreen='true' mozallowfullscreen='true' width='320' height='266' src='https://www.youtube.com/embed/f-gZW4aPa-A?feature=player_embedded' FRAMEBORDER='0' /></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;">Update - 2016-1-16<br />I wanted to copy the following text from my FAQ post and correspondence so there is zero ambiguity for anyone looking at this from the perspective of a new or potential user.<br /></div><blockquote class="tr_bq" style="clear: both; text-align: left;">"Now let me understand some components, I have decided to use your logic board.<br />What exact piece of the puzzle does this include? What other components do I need to design and build myself. "</blockquote><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">Okay, before listing off what it includes, let me state plainly what it and its associated files do NOT include, in other words things you need to source and build yourself:</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">1) Bridge Inverter. *</div><div class="separator" style="clear: both; text-align: left;">2) AC power cord for Bridge</div><div class="separator" style="clear: both; text-align: left;">3) AC power cord for USSTCC's step-down transformer</div><div class="separator" style="clear: both; text-align: left;">4) Secondary Resonator</div><div class="separator" style="clear: both; text-align: left;">5) Primary Coil</div><div class="separator" style="clear: both; text-align: left;">6) hookup wire</div><div class="separator" style="clear: both; text-align: left;">7) GDT; wire and core *</div><div class="separator" style="clear: both; text-align: left;">8) secondary topload (doesn't have to be fancy - salad bowl!)</div><div class="separator" style="clear: both; text-align: left;">*note I do have most of the suggested parts for these listed, things marked with asterisk have detailed instructions and parts lists.</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">What does the USSTCC Board include? It includes one bare USSTCC printed circuit board and all documentation required for proper construction of a working SSTC and lifetime Q&amp;A help service.</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">Now, a better question; "What parts of the 'SSTC puzzle' does the completed USSTCC encompass?"</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">The USSTCC board takes care of the entire Low Voltage power supply supply, feedback processing circuitry, signal amplifier and splitter, add-on (interrupter &amp; modulator) interfacing, and Gate Drive requirements of any SRSSTC operating in any mode. You add a bridge inverter, GDT, and completed resonator and have a fully working SSTC. All of the recommended parts for the bridge inverter and GDT are listed in the BOM files with their ordering numbers direct from reputable suppliers.</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">The only electrical components you need to pick and determine source of yourself are the AC power cords/plugs, GDT wire (22ga solid core, insulated (not enameled) to &gt;300V, 2 or 3 colors), rosin core eutectic solder, and primary coil wire (10ga finely stranded copper, insulated to &gt;300V - silicone if possible, cheap on eBay used for RC hobbies).</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">The physical components you'll need are coilforms, polyurethane, various mounting hardware (screws, nylon standoffs), etc.</div></div>Matthttps://plus.google.com/116620987173229654069noreply@blogger.com1tag:blogger.com,1999:blog-8547964686533873941.post-3155477584786735672015-01-05T19:19:00.003-08:002015-02-24T16:42:01.108-08:00Sigurthr's DRSSTC CalculatorThis is a simple CLI (command line interface) calculator program to assist you in planning and designing your Doubly Resonant Solid State Tesla Coil. There is no installation process necessary; simply download the .rar, unpack it to a directory of your choosing, and run the .exe. &nbsp;It is for Windows operating systems only.<br /><br />Please note; only enter numerical characters when prompted for data. Entering letters or symbols will result in the calculator program crashing.<br /><br />A README.txt file is provided in the .rar to explain the calculations behind the program and help the user get accustomed to its operation.<br /><br />The program intakes simple parameters such as: DC Bus Voltage, Primary Inductance, Primary Capacitor Voltage Rating, Capacitor Derating Percentage, and Resonant Frequency. It then computes the Maximum Possible Peak Current and Voltage for the Primary Tank for the maximum usable Burst Length before the capacitor voltage is exceeded.<br /><div style="text-align: center;"><br /><a href="https://app.box.com/s/djhbgdrigduiu8628rz7" target="_blank"><span style="color: blue; font-size: large;">DRSSTC Calculator Download</span></a><br /><br /><div style="text-align: left;">Update: 24/2/2015 I'm pushing a new version of this up to the box.com download repository because it was brought to my attention that some users are still experiencing the missing .dll error. If you had any troubles previously, please try redownloading the file and give it a go again. My apologies for the inconvenience!</div></div>Matthttps://plus.google.com/116620987173229654069noreply@blogger.com0tag:blogger.com,1999:blog-8547964686533873941.post-75302213155875630752015-01-05T19:16:00.002-08:002015-01-05T19:16:28.665-08:00SigurthrEnterprises Website is CLOSING, all files and data being moved to THIS BLOG!Hey everyone!<br /><br />2014 has been a rough year, filled with serious medical and financial problems, and more than its fair share of stress. 2015 is here now and I'm beginning to pick up the pieces and restructure my life where needed. Part of the process is saying goodbye to my less-than-successful .com website. Though it got the majority of the traffic of my online presence, I just can't justify the expense as it generated very, very little income (less than one month's coffee for many folks).<br /><br />Out of appreciation for those who did visit it and have enjoyed my data files and postings, I'm moving all of that data to this blog for permanent backup and access. Everything on the site will be available here. I still have USSTCC boards available, and still have many projects in the works.<br /><br /><div style="text-align: center;">Thank you all.</div><br />-SigMatthttps://plus.google.com/116620987173229654069noreply@blogger.com0tag:blogger.com,1999:blog-8547964686533873941.post-66007049007999431092014-12-02T12:12:00.000-08:002014-12-02T12:12:17.974-08:00Windows Batch File High Ping DataloggerThere comes a time in every internet user's life where they realize that their internet connection isn't all it is cracked up to be. For me, living out in rural mid-west USA, this is a constant struggle. I only have access to a singular phone and internet provider, and because I live more than three miles out from their one and only server center, I have to pay considerably more, and accept a far lower standard of internet service. It costs me roughly $90/mo for a 15mbit down / 1.5mbit up DSL line. bandwidth isn't usually the issue though, unless I need to upload a file, where if I exceed 125kbit bandwidth it swamps the line and terminates any downstream data streams. That can't be helped, it is a product of the hardware systems in place. The issue that plagues me most... is latency.<br /><br />What do you do to check latency statistics? You run the ubiquitous Ping (ICMP Echo Request) diagnostic. Here, you select a target IP address, and your system will send a packet off to that address, tell you if it was delivered, and how much time it took to get there and back. You can go to just about any windows machine, open the command prompt, enter "ping" followed by a standard IP address, or even a domain name, and hit enter, to see the results of four packets being sent off. You can also run the Tracert or Trace Route ping utility, which sets the Time To Live (TTL - a limit of how many hops a single packet is allowed to make) to 1, which means you get a ping response from every single hop along the route consecutively.<br /><br />Both tools are indispensable in network troubleshooting, but by the very nature of tracert it can only be used as a spot-check tool. You run it when you think there is a problem, or when you know there isn't one, and then compare the results. You can run a very light weight single ping anytime you want, and you can even make a batch file to run it continuously, once every set amount of time. This helps to keep connections that are prone to failure or timeout alive. It is simple to do, simply use the option "-n #" after the ip address, remember to remove the quotations, and replace the # with a number. Running continuous pings can be done with the "-t" option, but this can easily contribute to network congestion, both in your LAN and at the destination server. Some servers will even consider this a form of attack and block off communications with your IP address, not good, and thus not advised. You can get around this by adding a delay and automating the ping process in a batch file. A simple GOTO command and a TIMEOUT delay command are all that are needed.<br /><br />Here's where the fun starts....<br /><br />What if you want to record the results of the ping tests to catch intermittent latency issues. You probably want to run the ping commands relatively often, perhaps once every second or two. It's trivial to output the results from Ping.exe to a text file using the append operator "&gt;&gt;". Wait though, this is going to make a HUGE file that no IT professional is going to want to look over. Well, you could write up a text file parsing script to extract only the unusual ping results and place them in a new file. That would solve it. but now you're still eating system resources by continuously writing to a text file on your hard drive. Also, you now need to periodically run the parsing script to trim down the text file. Not very user friendly, and certainly not elegant.<br /><br /><div style="text-align: center;"><b><u>The Programming Considerations.</u></b></div><br />You have a few choices.<br /><br />1) You fire up your favorite language's IDE and start writing a from scratch program that will execute the functions that Ping uses and processes the resultant data and logs it accordingly. This will be tens of hours of coding, at the very least. If you take a look at Ping.c or Ping.cpp for example, they're rather huge works of programming.<br />2) You fire up your favorite language's IDE and write a from scratch program that will call on Ping.exe to do its thing and then grab the results. You'll have to deal with advanced systems like windows sockets, pipes, and all kinds of nasties.<br />3) You throw in the towel and find some end user program that probably isn't free that will datalog ping results, and hope it is good enough. Yeah, I'm not the kind to do that either.<br />4) You start learning a scripting language like Perl of Python to do what options 1 and 2 would but far easier. Yeah, still not going to do that.<br />5) Jump into the deep end of windows batch scripting and try to trudge through the muck of a poorly explained, foreign looking language with rather inaccessible documentation because you KNOW it can be done, and the results are likely to be the easiest to implement. Guess that's what we have to do.<br /><br /><div style="text-align: center;"><b><u>The Windows Batch (.bat) File</u></b></div><br />Basically, batch files are a script of commands to be executed autonomously by the windows command line interface once the batch file is executed. Any command that can go into a CLI can go in a batch file, though you will usually need to modify the syntax and structure some.<br /><br />Thankfully there is a website called SS64.com which is run by Simon Sheppard of the UK. This is a truly valuable resource when it comes to windows CLI and Batch files. If you have any experience with programming, especially in C/C++, this site will get you going writing useful and efficient batch files as long as you carefully read the information presented and apply some elbow grease.<br /><br />The hardest part will be recognising the required syntax and wrapping your head around the fact that you don't have the structure to fall back on that most languages have. You don't declare/define variables at the top, and there are many hidden limitations when working with variables and data input/output. Getting things right in terms of structure and syntax was the most difficult part by far. Notepad makes a pretty piss poor programming IDE, haha. I know at least 90 minutes were swallowed up by forgetting to wrap a variable in % signs and having a line break after a DO command that it didn't like.<br /><br /><div style="text-align: center;"><b><u>My Batch File</u></b></div><br />The heart of this 'program' is fourfold;<br />1) Call and save the date and time in an appropriate format to variables.<br />2) Ping the supplied IP address.<br />3) Find the relevant data in the Ping.exe output, save it to a variable,<br />4) Process the variables' text strings into usable chunks and then perform an IF THEN conditional check to discard all of the useless data points. Export the saved data to a log file.<br /><br />Written within comments (lines preceeded by double colons) is the syntax and command structure basics, as well as links to their pages on SS64.com At the top of the file is my generic header that explains what the program is and what it does, as well as how to contact me. It goes on to explain what to change in what lines to repurpose this program for your own needs. I've gone ahead and generalized the output file names and filepaths, as well as the target IP address so that this program will just simply run on just about any modern windows machine. Feel free to use it as you like. To use, simply rename/SaveAs the file as a .bat instead of a .txt file in any text editor. If you have file extensions showing enabled you can just right click and rename as well. Note that with the default settings for the output file (C:\ directory) you might need to run the batch file as an administrator (right click, run as admin), depending on your operating system and account privileges. Simply change the directory to another place where you can easily write files to if this is an issue.<br /><br /><div style="text-align: center;"><b><a href="https://app.box.com/s/vmhhm3ojj2ergk604bf0" target="_blank">Sigurthr's High Ping Datalogging Batch File</a></b></div><div style="text-align: center;"><b>https://app.box.com/s/vmhhm3ojj2ergk604bf0</b></div><br />P.S. for what it is worth; my internet connection is far less stable than I thought it was. I am getting many spikes above 500ms roughly every hour, throughout all hours of the day and night. Less frequently there are spikes above 1 second. There are spikes between 200ms and 400ms roughly every couple of minutes. The "normal" ping time is 58ms for reference.Matthttps://plus.google.com/116620987173229654069noreply@blogger.com0tag:blogger.com,1999:blog-8547964686533873941.post-27292475099064152002014-07-17T21:39:00.002-07:002014-07-19T22:26:04.414-07:00Arduino Pulse CounterToday I decided to create a computer interface for the geiger counter I repaired several years ago. It is a Black Cat Systems GM-45 that takes in 12V and outputs 12V pulses for each incident detection. It uses a russian mica window pancake tube, which is very sensitive. There were some issues with the HV inverter circuit when I bought it second hand, and they were easily fixed by simple component swaps. It was originally designed for RS232 communication, but this unit did not have a DB9 or DB25 connector on it, just flying leads. Likewise, it did not have the window exposed from the housing. I did the housing modifications when I first got it, but I'm debating remounting the board into a better enclosure and leaving the excessively fragile window enclosed and protected.<br /><br />The hardware is simple, a 100nF dc blocking cap to block the ~2.4V DC bias on the output and a 10K:10K voltage divider to step down the ~9.6V to &lt;5V suitable for TTL/USB communication. Corrected output is fed into the Arduino's pin3 and a ground/return wire is run between the arduino and GM detector for continuity.<br /><br />The software was relatively straight forward for the counter. It simply increments a variable each time a pulse is detected and sends the total to the serial monitor at a set interval. Note that no delay command was used since it needs to count pulses while timing. I also programmed in an indicator LED to pin13 which had a built in led on the Uno. I had to code in hysteresis, which took me several hours, for this LED as the ~&lt;10mS pulses are too short for our eyes to see well. This involved an entirely separate timer routine and some creative coding to toggle states efficiently.<br /><br /><div style="text-align: center;">Here's the links to download the .txt files with the arduino code.<br /><a href="https://app.box.com/s/uafqp7p1loz2micc67xl" target="_blank">General Purpose Pulse Counter</a></div><div style="text-align: center;"><a href="https://app.box.com/s/jtca6lh66id13hhuqmta" target="_blank">Geiger Counter Optimized Version</a></div><br />Note that the LED will appear continuous above about 30Hz. You can set the time period and make adjustments to better suit your needs, but remember that I'm only transmitting data from the arduino via the serial port, not to it, so you'll need to push new code for each change.<br /><br />As well as this works I may look into picking up a cheap USB-RS232 converter and DC-DC converter to step up the 5V from USB to 12V so that I have a more compact all in one, always on radiation monitor. I don't want to tie up my only arduino, and as is this is taking my best breadboard and bench supply to power!<br /><br />7/20/14 UPDATE: I noticed that when used for a geiger counter scaler that the readings were a bit high. When I was writing the program I was concerned that the entire loop might be executed so fast as to have multiple triggers for the same pulse. This was confirmed with single pulse testing. I revised the code to include a delay line that prevents multiple triggering. There is now a user changeable variable that sets a dead time before the arduino will count an additional pulse. This is set to 100uS by default but easily changed to suit your needs. For non square pulses keep in mind that the arduino's digitalRead triggers on about 2.0V, so just have it for as long as the waveform is above 2V. I've also revised the serial output code for better visuals when used as a geiger counter and added in the function of dose rate conversion. Simply put in the counts per microRem into the GMsensitivity variable and it will do the math for you. To not clutter things there are now two .txt files, one for generic counter, and one for geiger counter. Enjoy!Matthttps://plus.google.com/116620987173229654069noreply@blogger.com0tag:blogger.com,1999:blog-8547964686533873941.post-80583182516447753802014-07-16T18:43:00.002-07:002014-07-16T18:49:01.629-07:00DIY Arduino Stepper Motor XY Laser Scanner<span style="color: white; font-family: Arial, Helvetica, sans-serif;">I've recently worked on a project that I had the parts for for quite some time, but never got started on. I salvaged this XY stepper head from a cheap chinese "laser show" which had no programmable inputs and a nonfunctional "auto sound" mode that would only repeat the same three patterns over and over again. The laser that was built into it had its pump diode die a thermal death a long time ago so I shelved it and planned on modifying it eventually.</span><br /><span style="color: white; font-family: Arial, Helvetica, sans-serif;"><br /></span><span style="color: white; font-family: Arial, Helvetica, sans-serif;">I decided to look into stepper motors and their control schemes and found that it would be rather simple to code the subroutines for single coil per step movements on an arduino. Once I realized this, it was time to start work.</span><br /><span style="color: white; font-family: Arial, Helvetica, sans-serif;"><br /></span><span style="color: white; font-family: Arial, Helvetica, sans-serif;">Now, steppers aren't particularly fast or accurate, especially at the upper limits of their speed, as they start to miss steps. I can get these cheap ones to about 2.75mS/step and no further without losing steps, but that's good enough for me.</span><br /><span style="color: white; font-family: Arial, Helvetica, sans-serif;"><br /></span><span style="color: white; font-family: Arial, Helvetica, sans-serif;">Instead of driving the motors with an intermediary IC (or even an entire dedicated board) designed for stepper control I decided to just go discrete electronics with NPN bipolar transistors and small signal fast diodes for flyback recovery. I'm only driving one coil at a time since I don't have the pinout for the motor coils and it is a 5pin unipolar motor with common ground. It doesn't appear that it is two center tapped coils with common CT., but rather it looks to be four individual coils with tied ends. I know there are ICs that can use the two center tapped coils in a bipolar drive method to allow microstepping and such but I don't think that is possible with these steppers. The reason for the NPN BJTs is that the arduino can only sink or source 40mA maximum per I/O line and these steppers draw about 90mA @ 9V (and they're 12V steppers, but run down to 5V min).</span><br /><span style="color: white; font-family: Arial, Helvetica, sans-serif;"><br /></span><span style="color: white; font-family: Arial, Helvetica, sans-serif;">I experimented with increasing the motor voltage in hopes of gaining speed, but no increase in accuracy or speed was measured between 5.7V and 12V. I found that I got the best results with a 2.75mS ontime and 250uS offtime.</span><br /><span style="color: white; font-family: Arial, Helvetica, sans-serif;"><br /></span><span style="color: white; font-family: Arial, Helvetica, sans-serif;">Unfortunately the mechanical issues of rotor inertia, jitter, and flicker could not be eliminated. Only the simplest of designs could be reproduced without a large degree of error. Attempting to reproduce a number 8 results in two vertically stacked squares with a space in between them, tethered in the center. (see video #3).</span><br /><span style="color: white; font-family: Arial, Helvetica, sans-serif;"><br /></span><span style="color: white; font-family: Arial, Helvetica, sans-serif;">For the amount of work it takes to get this poor result it isn't worth continuing further. It was a good exercise and a fun experiment if you ignore the 12hours or so of coding. I wrote nearly 2500 lines of code for this, and while most were just edited copy/paste, it was still a nightmare of a job. There are 64 subroutines written for motor advancement: 1 to 16 steps forward, 1 to 16 steps backward, each for two axes.</span><br /><span style="color: white; font-family: Arial, Helvetica, sans-serif;"><br /></span><span style="color: white; font-family: Arial, Helvetica, sans-serif;">The code is straight forward; manually pulse each coil for a set time in grouped ordered bunches to produce movement. The Achilles heel is that this is completely open loop. There is no way to detect or remember what the last coil used was so when you go back to the same axis you have to manually insert code to bridge the gaps to ensure it doesn't inadvertently reverse steps or miss steps entirely.</span><br /><span style="color: white; font-family: Arial, Helvetica, sans-serif;"><br /></span><span style="color: white; font-family: Arial, Helvetica, sans-serif;">For example:</span><br /><span style="color: white; font-family: Arial, Helvetica, sans-serif;"><br /></span><span style="color: white; font-family: Arial, Helvetica, sans-serif;">void loop(){</span><br /><span style="color: white; font-family: Arial, Helvetica, sans-serif;">&nbsp; xplus4();</span><br />&nbsp; xminus4();<br />}<br /><br />Thus pulses coils as such: 1 2 3 4 4 3 2 1. Notice the double pulse of coil 4? This means the rotor will sometimes make 4 positive movements and then three negative ones, and other times it will make three positive and three negative, depending on where the rotor was when the first pulse to coil 1 hit.<br /><br />If we wanted to fix this we would have to do as so:<br /><br />void loop(){<br />&nbsp; xplus4();<br />&nbsp; digitalWrite(1, HIGH);<br />&nbsp; delayMicroseconds(tON);<br />&nbsp; digitalWrite(1, LOW);<br />&nbsp; delayMicroseconds(tOFF);<br />&nbsp; xminus4();<br />}<br /><br />This pulses as such: 1 2 3 4 1 4 3 2 1. Now we'll always get four positive and four negative steps, but occasionally we'll get five positive initially, again depending on rotor position.<br /><br />Consequently, the subroutine for xplus5 looks just like 1 2 3 4 1, so I would have just used it instead, but I wanted to illustrate the process more precisely. This example has a pre-written subroutine that fits in as a correction, but most transitions do not.<br /><br />The hardware circuitry is simple, as this schematic and picture show:<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-JY02kdxoWtg/U8cnDNgeRnI/AAAAAAAAAF0/ZgTE34y6fng/s1600/XY+Stepper+Motor+Controller+(Arduino).bmp" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://4.bp.blogspot.com/-JY02kdxoWtg/U8cnDNgeRnI/AAAAAAAAAF0/ZgTE34y6fng/s1600/XY+Stepper+Motor+Controller+(Arduino).bmp" height="241" width="320" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="http://1.bp.blogspot.com/-5fu0622DdAI/U8coP2oMCtI/AAAAAAAAAGA/pGgy7F5QX7g/s1600/photo.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://1.bp.blogspot.com/-5fu0622DdAI/U8coP2oMCtI/AAAAAAAAAGA/pGgy7F5QX7g/s1600/photo.JPG" height="240" width="320" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;">Here's a link to the arduino code:&nbsp;</div><div class="separator" style="clear: both; text-align: center;">https://app.box.com/s/mtae49elczo39468myul</div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><br /></div><iframe allowFullScreen='true' webkitallowfullscreen='true' mozallowfullscreen='true' width='320' height='266' src='https://www.youtube.com/embed/AmcNHn4Jw-c?feature=player_embedded' FRAMEBORDER='0' /><br /><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><br /></div><iframe allowFullScreen='true' webkitallowfullscreen='true' mozallowfullscreen='true' width='320' height='266' src='https://www.youtube.com/embed/82xoPZgh8XI?feature=player_embedded' FRAMEBORDER='0' /><br /><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><br /></div><iframe allowFullScreen='true' webkitallowfullscreen='true' mozallowfullscreen='true' width='320' height='266' src='https://www.youtube.com/embed/DCWS0BkniLI?feature=player_embedded' FRAMEBORDER='0' /><br /><div class="separator" style="clear: both; text-align: center;"><br /></div><br />Matthttps://plus.google.com/116620987173229654069noreply@blogger.com3tag:blogger.com,1999:blog-8547964686533873941.post-21546568976581295012014-02-08T21:30:00.003-08:002014-02-08T21:37:11.855-08:00A Treatise on Audio Modulation of Solid State Tesla Coils<span lang="">The question of audio modulation often comes up in the discussion of Tesla Coils. In the solid state world using conventional topologies for Tesla Coils there are a few methods of achieving audio modulation. It is important to explain the most common ones and contrast each in order to answer&nbsp;the&nbsp;question accurately. The short&nbsp;answer is YES IT CAN BE DONE.<br /> <br /><strong><u>1. Direct feedback signal modulation; FM:</u></strong> This is the method used in all VCO based designs such as the popular 4046PLL type. The frequency of the drive signal is varied around a set point, thus frequency modulating the drive signal. FM modulation of the drive signal relies upon the bandwidth of the resonator to perform slope detection to impose amplitude modulation on the output arc as the drive frequency moves away from the resonance point.<br /></span><div style="text-align: left;"><span lang="">&nbsp;</span></div><span lang=""><div style="text-align: left;"><strong>a) closed loop:</strong> Here the driver auto-tracks the exact resonant frequency of the secondary coil and uses this as the set point that the drive signal is FM modulated around. As the coil is always run at resonance, this has the best output power achievable. I’ve tested this but not published the results as they are unsatisfactory to my standards. The issue is that at exact resonance the Q of the resonator is so high that you don’t have adequate bandwidth for the audio signal. The result is that you get a highly garbled audio output as there is a different phase shift between the positive and negative half cycles of the audio. I found that by artificially lowering the Q of the resonator you can increase the bandwidth of the resonator to the point that clear audio is produced. By artificially lowering the Q I mean place a grounded object in close proximity to the toroid. Unfortunately my main TC that I used for this kind of experiment is still awaiting repairs after a primary overheat while running at 3200Watts. I’ve done some -almost equivalent- testing on my small coil which runs open loop, but since it is open loop I can’t tell if the bandwidth increase is completely from the lowered Q from the increased loading or if it is because the increased capacitance seen at the topload which consequently drops the resonance point, in effect raising the drive point above resonance.</div><br /><strong>b)open loop:</strong> Here the driver is basically just a VCO where the user adjusts the set point manually. This drive method is the most reliable and easiest to reproduce. This is the method used for my 4046PLLMod modulator. It has the inherent benefit that if something were to come in close proximity to the toroid that the resonance point will shift further&nbsp;down&nbsp;from the set point reducing output power further. This is a user safety benefit, not a user enjoyment benefit. Due to the way the phase shift between voltage and current occurs in multiple switch topologies used in the inverter (half or full bridge) <strong>the set point must never be allowed to be set below resonance. </strong>This results in an overly capacitive load which causes massive current commutation through the body and/or isolation diodes on the switches. <br /><ul><li> &nbsp;Build consequences: The inverter must thusly be built to withstand occasional operation under these conditions. This requires the use of two high current ultrafast schottky diodes per mosfet. One diode is in series, forward biased, with the diode’s cathode connected to the fet’s Drain. The other diode is antiparallel with the series diode/fet combination; anode to the fet’s Source and cathode to the first diode’s anode. This blocks off the internal diode and reroutes reverse polarity current literally around the fet. If this is not implemented running the inverter in a capacitive environment will cause a quick and spectacular death of all the silicon involved.</li></ul><br /><u>Running the coil where set point equals exact resonance</u> has the aforementioned affect of inadequate bandwidth for audio reproduction. As it is open loop attempting to manually lower the Q and increase bandwidth also lowers the resonant frequency, so one can’t be sure which and how much of which effect is actually yielding the increased bandwidth. In my own tests a very minimal frequency shift was seen and the equivalent shift is not enough to produce the increase in bandwidth seen. This confirms the theory that adding loading will reduce the Q of the resonator, and that such a drop in Q increases bandwidth. The one benefit that suggests further developments are required here is the same for the closed-loop method; the highest output power of any modulation scheme is seen.<br /> <br /><u>Running the coil where the set point is a set frequency above the resonance</u> point drops the Q of the resonator (at the actual drive frequency, the Q of the resonator to the resonance frequency is unchanged) to yield enough bandwidth for adequate audio reproduction quality. The distance above resonance needed is related to the slope of the frequency response of the resonator, and is thus a function of the resonator Q. Testing on my own coils have yielded that approximately 6.5KHz above resonance yields the best results. If you adjust the set point too far above resonance the slope appears more and more nonlinear, like adjusting a grid/gate/base bias down into cutoff. This has multiple results, primarily there is reduced power transferred to the secondary so there is a smaller output corona which is less able to reproduce the lower frequencies of the audio. The user will primarily notice a low frequency roll off as the set point is set higher. Secondly due to the decreasing linearity of the slope response of the resonator there will be reduced change in amplitude for a given change in frequency; less and less modulation is seen in the output corona. It is thus that the user should determine the resonance point by running the coil in closed loop mode with a stable, reliable, repeatable feedback network and record the resonant frequency. Then a transition should be made to the open loop FM modulated drive signal and the user should adjust the set point to where the audio quality sounds its best. It is best to use a high bandwidth selection of audio/music for this process. The user must take care to observe proper high voltage high frequency/RF isolation practices if the adjustments are to be made while the coil is in operation. Moving the set point into the capacitive region below resonance can be identified by a harsh tone in the output corona when no modulation is present. An at-resonance or above-resonance (inductive) environment can be identified by a near-silent hissing coronal output. Good DC bus filtering of ripple is thus necessary to eliminate any hum from the bus input rectification. As the set point is adjusted up from resonance the bass frequencies will strengthen and begin to reduce in distortion. The optimal set point can be identified as the point where bass response is still strong yet there is little to no distortion. If the output is observed on an oscilloscope one can set the time base to where the RF envelope is displayed and bass frequencies will stop appearing to be clipped (flat-topping). At the optimal set point there will still be a noticeable drop in output power compared to driving at exact resonance, but this is not always a detriment, as it allows for longer run times. After all, what good is perfect audio modulation, if you can’t even play a whole song on it!?<br /> <br /><strong><u>2. Drive signal gating - a.k.a. PWM Modulation:</u></strong> This is the method most often employed as it requires the least difficulty in implementation, and the coil is inherently run at a lower duty cycle than CW. This method requires the use of gate drive chips which have an enable input. As the feedback signal is effectively interrupted to produce the amplitude modulation in the output there are times where feedback is lost. This requires the use of a self-starting or self-pinging driver. This is why discrete gate drive cannot be used unless a complex network of logic gating is used to detect when no feedback is present and then ping the discrete gate drive to reinitialize oscillation and feedback. Thankfully Texas Instruments offers complementary gate drive chips which will operate at very high frequencies and very high peak currents that have enable inputs; the UCC37321 and UCC37322. The PWM modulation can be implemented by a number of methods, but the TL494 and SG3525/KA3525 chips are the most commonly used. I’ve successfully used the KA3535 chips in my own tests. The PWM carrier frequency must be chosen to be sufficiently high enough as to render it inaudible to human ears and also be high enough that accurate reproduction of the audio signal’s harmonic content is achieved. If the frequency is too low the effective bandwidth is insufficient for quality audio. This in practice means that the carrier frequency must be above 48KHz or so. Now, as we are interrupting the CW operation of the SSTC we will see a greatly reduced output corona, and in fact if one were to try such a "low" carrier frequency like 48KHz there would be little to no human-detectable output. As the carrier frequency approaches reciprocals of the resonant drive frequency the output of the SSTC will begin to increase. For example, for a 340KHz resonant drive frequency an output maxima will be observed around 113KHz PWM carrier frequency. The exact carrier frequency will need to be adjusted manually to shift IF (intermediate frequency) and BF (beat frequency) harmonics out of the range of human hearing, or loud squealing will be heard in the output. The trick is thus finding a carrier frequency that has enough bandwidth to reproduce the audio with sufficient quality, while having harmonic content of unwanted frequencies outside the range of human hearing, and simultaneously producing a strong enough amplitude corona output to get faithful and audible reproduction of the modulation signal at the output. In my own tests with a 340KHz resonant SSTC and a PWM carrier frequency range of 48KHz-250KHz there were several maxima nodes between 80KHz and 180KHz (which correspond with reciprocals of the drive frequency), and at the "best sounding" of them the audio reproduction quality was significantly less than that achieved by FM modulating the drive signal. Likewise, even when at the strongest power output maxima in that range, the actual output power was less than seen by the FM modulation scheme. More experimentation and developments are required in determining the effect and optimal pulse width set point that the PWM modulation uses. The optimal set point for pulse width depends on how much of a pulse width increase a full scale deflection input signal produces, but the biasing of the set point would be similar to the biasing in a class-A amplifier, where you want to use the highest set point that keeps the signal within the linear region. Given the relationship between secondary resonance frequency and PWM carrier frequency one can postulate that higher frequency SSTCs would benefit more from this topology, except in the case in which the PWM carrier frequency can be made to be the resonant drive frequency, but then we are no longer performing feedback/drive signal gating! In that circumstance it would be best to use a 50% duty cycle PWM set point and keep the modulation to acceptable limits so that the inverter is not driven far from 50% duty cycle pulses. <br /> <br /><strong><u>3. High Level Bus Modulation - Class-H:</u></strong> In this methodology we AM modulate the supply rail via a modulation transformer, as was done in the old days of Tube AM transmitters. The trick here, is to find, or make, a modulation transformer that has the required low impedance to current at the resonant drive frequency of the secondary, yet can handle the large DC current draw of the primary. This is NOT an easy task. I have yet to succeed in this method because of the difficulty in locating a sufficient transformer. Also, because of the large voltage swing needed on the supply rail to produce a sufficient modulation of the output corona a relatively high power amplifier must be used to drive the modulation transformer. Unlike with thermionic valve technology where the vacuum tubes were inherently high impedance devices, the modern SSTC is a low impedance device, so transformer parameters used in the olden days will not suffice, even though the concept of the overall topology is the same.<br /> <br />In the end all methods of audio modulating the tesla coil are all endeavors of AM modulating the output, either directly, or by utilization of slope detection by the resonator. More complex and less common methods are often employed in such topologies as the Single-Ended Class-E or Class-D/E Half-Bridge, but their operation is too complex to discuss here, and is often considered esoteric by most tesla coilers. I’ve even read about an experiment where audio modulation of the output was produced by placing a variable resistive load (class-A operation transistor) in parallel to the primary coil. Such methods always remind me of the quote by Einstein in reference to nuclear power technology: "Hell of a way to boil water!". Though the subjects are far removed, the idea is the same; extreme lengths are taken to do simple things, with efficiency often overlooked.<br /> <br />&nbsp;</span><br /><br /><span style="font-size: small;"><span lang=""></span></span><br /><br /><span style="font-size: small;"> <br /> <br /> <br /> </span>Matthttps://plus.google.com/116620987173229654069noreply@blogger.com0tag:blogger.com,1999:blog-8547964686533873941.post-57901703787486078372014-01-15T20:10:00.001-08:002015-01-05T19:38:34.264-08:00Sig's ATTiny85 SSTC InterrupterIn preparation for offering an interrupter kit to go along with the USSTCC (sstc controller kit) I got the first batch of ATTiny85 chips in today. So, I spent the day porting my program over to a standalone ATTiny85. I'd tested and proven my code on both Digispark and Arduino, so I knew it was solid, but there's always glitches when changing processors. It turned out to be the same naming glitch that pops up with the Digispark; ADC 1 is real pin 7, which is pin 2 in datasheets, which is <em>actually</em> pin "<strong>A2</strong>" in code. Aside from the code aspect I had to build an ISP programming board to mate the Arduino UNO to the ATTiny85. Simple stuff but still needed doing.<br /><br />Everything checks out and things are a GO! I only ordered 3 MCU chips, and I have need of one myself. I accidentally bricked one by making a dumb mistake on the breadboard and connected ADC3 up to V+ instead of the regulated Vcc line, DOH! No worries, they're cheap, the code is solid, and my ISP (programming tool) is all set. So, only one will be for sale, much like with&nbsp;the first three USSTCC&nbsp;boards, lol (3rd board wasn't bricked there, but given to my design&nbsp;partner).<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-PlZPCDZGyGw/UtdalKqh-xI/AAAAAAAAADc/8IdaP0sCDso/s1600/photo.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://4.bp.blogspot.com/-PlZPCDZGyGw/UtdalKqh-xI/AAAAAAAAADc/8IdaP0sCDso/s1600/photo.JPG" height="240" width="320" /></a></div><br /><div style="text-align: center;">Here's the ArduinoIDE (C++) code for the Interrupter program. <a href="https://app.box.com/s/93dt6fso6wj3tvx13m7b">https://app.box.com/s/93dt6fso6wj3tvx13m7b</a></div><div style="text-align: center;"></div><div style="text-align: center;">Here's the application schematic: <a href="https://app.box.com/s/qilqivytxbots3hxummh">https://app.box.com/s/qilqivytxbots3hxummh</a><br /><br />Here's the BOM (Bill of Matierals):&nbsp;<a href="https://app.box.com/s/zn1vb0li8lxpviw0a9cn" target="_blank">https://app.box.com/s/zn1vb0li8lxpviw0a9cn</a><br /><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="http://3.bp.blogspot.com/-VyfqB7U8eXI/UtdbQF73GfI/AAAAAAAAADk/5dYUMWsEyHY/s1600/Sig's+ATTiny85+Interrupter.bmp" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://3.bp.blogspot.com/-VyfqB7U8eXI/UtdbQF73GfI/AAAAAAAAADk/5dYUMWsEyHY/s1600/Sig's+ATTiny85+Interrupter.bmp" height="241" width="320" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;">Video showing low power testing with the Digispark version:</div><div class="separator" style="clear: both; text-align: center;"><iframe allowFullScreen='true' webkitallowfullscreen='true' mozallowfullscreen='true' width='320' height='266' src='https://www.youtube.com/embed/xlIQ9T1aWuQ?feature=player_embedded' FRAMEBORDER='0' /></div><br />Matthttps://plus.google.com/116620987173229654069noreply@blogger.com0tag:blogger.com,1999:blog-8547964686533873941.post-54908943550555911412014-01-14T18:56:00.000-08:002014-01-14T18:56:21.712-08:00Building a ca.1928 Dual Triode Class-A Audio AmplifierThis is another recap of a previous project.<br /><br />Basically the task came to me to clean up an old Victrola Radiola audio cabinet from 1928. The phonograph worked fine so it was left be, but the radiola (the AM&nbsp;radio) was toast. I figured I might at best get a few tubes to play around with or just a couple of inductors. It turns out nearly all of the tubes were good, and the PSU worked fine, but the tuning coils and caps were wrecked. I spent a bit over a week going through various experiments with the old tubes and modern tech to see just what all I could do with the parts I found. Here are the data files and the videos of progress:<br /><div style="text-align: center;">&nbsp;</div><div style="text-align: center;">Power Supply and Output Coupling:</div><div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-_pKqkYi18bU/UtX1R20eYrI/AAAAAAAAAC0/O14R8_R5Zws/s1600/Radiola18-2C.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://2.bp.blogspot.com/-_pKqkYi18bU/UtX1R20eYrI/AAAAAAAAAC0/O14R8_R5Zws/s1600/Radiola18-2C.gif" height="250" width="320" /></a></div><div class="separator" style="clear: both; text-align: center;">&nbsp;</div><div class="separator" style="clear: both; text-align: center;">RF amp, tuning,&nbsp;and AF amp "final" sections:</div><div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-UD1j80BAnBA/UtX1kb2rAtI/AAAAAAAAAC8/4D8a73ZsrX0/s1600/Radiola18-2D.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://2.bp.blogspot.com/-UD1j80BAnBA/UtX1kb2rAtI/AAAAAAAAAC8/4D8a73ZsrX0/s1600/Radiola18-2D.gif" height="198" width="320" /></a></div><br /><div style="text-align: center;">Simplified schematic:</div><div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-eWlhWNuvRe4/UtX1u4TnoRI/AAAAAAAAADE/pz6JbqH0JdU/s1600/Radiola18-2A.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://4.bp.blogspot.com/-eWlhWNuvRe4/UtX1u4TnoRI/AAAAAAAAADE/pz6JbqH0JdU/s1600/Radiola18-2A.gif" height="130" width="320" /></a></div><div class="separator" style="clear: both; text-align: center;">&nbsp;</div><div class="separator" style="clear: both; text-align: center;">Modified schematic showing rebuild as dual triode Audio Amp:</div><div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-DCpkATdjd4I/UtX19QfQr2I/AAAAAAAAADM/GmO6I3pGeO8/s1600/Triode+Amp.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://2.bp.blogspot.com/-DCpkATdjd4I/UtX19QfQr2I/AAAAAAAAADM/GmO6I3pGeO8/s1600/Triode+Amp.gif" height="217" width="320" /></a></div><div style="text-align: center;">Videos detailing the various incarnations and progress:</div><br /><div class="separator" style="clear: both; text-align: center;"><iframe allowFullScreen='true' webkitallowfullscreen='true' mozallowfullscreen='true' width='320' height='266' src='https://www.youtube.com/embed/bZiDr3mPf1o?feature=player_embedded' FRAMEBORDER='0' /></div><div class="separator" style="clear: both; text-align: center;">&nbsp;</div><div class="separator" style="clear: both; text-align: center;"><object width="320" height="266" class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="https://ytimg.googleusercontent.com/vi/Ti6_ULgVZFQ/0.jpg"><param name="movie" value="https://www.youtube.com/v/Ti6_ULgVZFQ?version=3&f=user_uploads&c=google-webdrive-0&app=youtube_gdata" /><param name="bgcolor" value="#FFFFFF" /><param name="allowFullScreen" value="true" /><embed width="320" height="266" src="https://www.youtube.com/v/Ti6_ULgVZFQ?version=3&f=user_uploads&c=google-webdrive-0&app=youtube_gdata" type="application/x-shockwave-flash" allowfullscreen="true"></embed></object></div><div class="separator" style="clear: both; text-align: center;">&nbsp;</div><div class="separator" style="clear: both; text-align: center;"><iframe allowFullScreen='true' webkitallowfullscreen='true' mozallowfullscreen='true' width='320' height='266' src='https://www.youtube.com/embed/7RQTCzoibtA?feature=player_embedded' FRAMEBORDER='0' /></div><div class="separator" style="clear: both; text-align: center;">&nbsp;</div><div class="separator" style="clear: both; text-align: center;">Final Result:</div><div class="separator" style="clear: both; text-align: center;"><iframe allowFullScreen='true' webkitallowfullscreen='true' mozallowfullscreen='true' width='320' height='266' src='https://www.youtube.com/embed/WopQoHJvoZM?feature=player_embedded' FRAMEBORDER='0' /></div><div class="separator" style="clear: both; text-align: center;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">The trickiest part, which is not on the last schematic shown, was finding a good negative feedback scheme (NFB) to try to balance the frequency response (enhance bass response by impeding treble's gain) and cut down on some of the hum. Unfortunately not all of the hum can be removed without remaking the entire power supply section, because these triodes are directly heated cathode tubes (filament valves) powered by AC, so since the filament IS the cathode the AC on the filament is imposed on the output by design. One has to remember that back in 1928 having sound come out of a box without a little man inside it was AMAZING, and having hum was of no consequence. </div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">NFB on thermionic amplifiers simply involves taking some of the antiphase output from the output transformer and feeding it in to either the grid or the cathode (most often the cathode) of first amplifier stage. This is as simple as a resistor and a capacitor in series between the antiphase leg of the output or impedance matching transformer and the pre-amp triode's filament. I can't remember the values I used, but that info is of little consequence really.</div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">What all this really shows is that triode class-A amplifiers are SUPER SIMPLE if you can find the right parts. The real unspoken hero here is the interstage transformer that takes the output of the first triode and couples it to the grid of the second triode. This is a job of both precision impedance matching and voltage transformation. There are no modern equivalents to get off a shelf. Interstage transformers were abandoned in the 30s for the most part when capacitive coupling was chosen as its successor. Using capacitive coupling is far cheaper, but it does require the engineer to figure out a proper value of anode resistor. The resistor forms a voltage divider with the tube, think of it this way; the tube becomes a variable pull-down resistor. The capacitor then couples off the dV (change in voltage) seen at the voltage divider output node. This scheme may be much cheaper to implement but there is a marked reduction in gain to having a series transformer directly couple the output. Such is the way of technology progression though.</div><br /><div class="separator" style="clear: both; text-align: center;">&nbsp;</div>Matthttps://plus.google.com/116620987173229654069noreply@blogger.com0