If you need assistance, please send an email to forum at 4hv dot org. To ensure your email is not marked as spam, please include the phrase "4hv help" in the subject line. You can also find assistance via IRC, at irc.shadowworld.net, room #hvcomm.
Support 4hv.org!
Donate:
4hv.org is hosted on a dedicated server. Unfortunately, this server costs and we rely on the help of site members to keep 4hv.org running. Please consider donating. We will place your name on the thanks list and you'll be helping to keep 4hv.org alive and free for everyone. Members whose names appear in red bold have donated recently. Green bold denotes those who have recently donated to keep the server carbon neutral.
Special Thanks To:
Aaron Holmes
Aaron Wheeler
Adam Horden
Alan Scrimgeour
Andre
Andrew Haynes
Anonymous000
asabase
Austin Weil
barney
Barry
Bert Hickman
Bill Kukowski
Blitzorn
Brandon Paradelas
Bruce Bowling
BubeeMike
Byong Park
Cesiumsponge
Chris F.
Chris Hooper
Corey Worthington
Derek Woodroffe
Dalus
Dan Strother
Daniel Davis
Daniel Uhrenholt
datasheetarchive
Dave Billington
Dave Marshall
David F.
Dennis Rogers
drelectrix
Dr. John Gudenas
Dr. Spark
E.TexasTesla
eastvoltresearch
Eirik Taylor
Erik Dyakov
Erlend^SE
Finn Hammer
Firebug24k
GalliumMan
Gary Peterson
George Slade
GhostNull
Gordon Mcknight
Graham Armitage
Grant
GreySoul
Henry H
IamSmooth
In memory of Leo Powning
Jacob Cash
James Howells
James Pawson
Jeff Greenfield
Jeff Thomas
Jesse Frost
Jim Mitchell
jlr134
Joe Mastroianni
John Forcina
John Oberg
John Willcutt
Jon Newcomb
klugesmith
Leslie Wright
Lutz Hoffman
Mads Barnkob
Martin King
Mats Karlsson
Matt Gibson
Matthew Guidry
mbd
Michael D'Angelo
Mikkel
mileswaldron
mister_rf
Neil Foster
Nick de Smith
Nick Soroka
nicklenorp
Nik
Norman Stanley
Patrick Coleman
Paul Brodie
Paul Jordan
Paul Montgomery
Ped
Peter Krogen
Peter Terren
PhilGood
Richard Feldman
Robert Bush
Royce Bailey
Scott Fusare
Scott Newman
smiffy
Stella
Steven Busic
Steve Conner
Steve Jones
Steve Ward
Sulaiman
Thomas Coyle
Thomas A. Wallace
Thomas W
Timo
Torch
Ulf Jonsson
vasil
Vaxian
vladi mazzilli
wastehl
Weston
William Kim
William N.
William Stehl
Wesley Venis
The aforementioned have contributed financially to the continuing triumph of 4hv.org. They are deserving of my most heartfelt thanks.
Registered Member #3315
Joined: Thu Oct 14 2010, 04:23PM
Location:
Posts: 156
Yan:
About my firing topology. I actually have the sensor triggering a 555 which in turn, puts the output low then to the inverting igbt gate driver.
As for my bug. Turned out I had a bad 555 timer, (a good portion of the 555's I just got of mouser were defective so I kept replacing a bad one with a bad one.... as well as a shaky at best breadboard).
That being said could the sensor still cause the same issues on the 555 as on the igbt driver?
What is a good way to protect the sensors? -Would making the sensor housing out of powdered ferrite help isolate the phototransistor from the emi?
MAXWELL: I just bought a few microprocessors (mega 8 I think couple others) to mess around with, but I have never used one and don’t know where to start... Maybe taking the time to learn and replacing all my firing circuits with a microchip might be the way to go, I am a bit intimidated to try as I have no idea where to begin.
NEW ISSUES: 1) Injector sometimes (maybe 1 out of 10) fires when I release the trigger? ( Topology, adjustable pulse length 555 edge trigger mono stable, connected to 422 driver) Any thoughts?
2) I hooked up my injector and fired a few shots, ever since then the Resistance on my igbts when open is 14K ohms, (same on all igbts (3 stages +injector))?? As you can imagine this drastically reduced velocity. I have tried everything to figure out what’s going on (changed 555, drivers, IGBT's) I still cannot figure it out.
Registered Member #8497
Joined: Tue Dec 04 2012, 06:24PM
Location:
Posts: 74
ben5017 wrote ...
MAXWELL: I just bought a few microprocessors (mega 8 I think couple others) to mess around with, but I have never used one and don’t know where to start... Maybe taking the time to learn and replacing all my firing circuits with a microchip might be the way to go, I am a bit intimidated to try as I have no idea where to begin.
If you have $25 and a USB cable laying around, buy any arduino you can easily get your hands on. I'll write the timing code for you. Real simple coding. FYI - the DUO utilizes the microUSB connector - which breaks easily.
Atmega8's will require an external programmer - something I don't venture off into.
Registered Member #3315
Joined: Thu Oct 14 2010, 04:23PM
Location:
Posts: 156
That would be awesome Maxwell. I will buy one today after I get out of work. Will any arduno work? Which one would you recommend? It’s long over due for me to start playing with the microchips. You think I could "reverse engineer" the code to learn how to program them?
Do you think changing to digital would have any significant effect on performance?
I gave up with optical sensing already as even full metal shielding doesn't solve the problem completely. So the sensor must be as far from coil as possible. Either use laser diodes to stretch the beam, or optical cable to drive it away from coil to somewhere where EMI is low enough to not interfere with sensor. I would recommend optical cables as you can stretch all optowires in one place where all sensors and microcontroller are located - no low-current electronics works near the high pulsed magnetic fields.
Issue 1 is not surprising - common problem caused by mechanical switch. Hardly solvable - switch always glitches a little when contacts are connected or disconnected giving some false signals due to microvibrations. You can involve microcontroller to filter those false pulses: after triggering occurs make it insensitive for any other state changes for some period of time. For example... My solution is two push buttons and a 555 timer - one button switches power supply on, another - switches it off and initiates firing sequence. If you think smg may be wrong with yours IGBT, measure it outside the circuit, having gate and emitter connected. 14K may be given by other elements or some small floating positive voltage on gate.
Registered Member #8497
Joined: Tue Dec 04 2012, 06:24PM
Location:
Posts: 74
Quick Reply: Modifying my code for you to be able to understand. I'll have it posted (edited here) before midnight.
Code is posted below. I haven't used the Mega in a year or two - but it should like this code.
Serial communications are established thru USB (make sure the baud rate on the arduino side is 9600)
variable delta x is the distance between photogates in mm.
Digital pin 3 is declared as an input. It will accept 0-5v (use a high impedance voltage divider just for safety for your trigger). When a HIGH signal is read, a de-bounce code pauses for 225ms (what I found to be fool-proof for my simple mechanical switches. IF you are doing a direct contact you may drop this down to 1 or 2ms).
Digital pins 10,11 are the photogate pins. They have a timeout in the speed_trap function that will declare an error if nothing passes between within 500ms. When the signal goes high to a pin from the photogate, the timers are triggered.
Variable 'engage' is the modular part - you can set the Arduino to jump to different functions by the number assigned to engage. I assumed engage 0 to mean waiting for trigger, engage 1 is trigger actuated.
Registered Member #8497
Joined: Tue Dec 04 2012, 06:24PM
Location:
Posts: 74
//Okay, so I down-compiled my code into this small format. //Ask if you have any questions. //It's not running 100% efficient but it is modular.
volatile byte engage; //Declare 'interrupts' as volatile byte tabA; byte darkA; byte darkB; unsigned int deltax; //Timer spacing in mm unsigned int thrutime; unsigned long dlaytimeA; unsigned long dlaytimeB;
void setup() { Serial.begin(9600); //Reserve Digital Pins 0 and 1 for Serial //on Duemillanove but not on Leonardo.
darkA=0; //Set initial Speedtrap ADC values darkB=0; engage=0; //Trigger status flag
Registered Member #8497
Joined: Tue Dec 04 2012, 06:24PM
Location:
Posts: 74
My full code controls the charging, triggering, speedgates and efficiency calculations.
I have a high-impedance voltage divider measuring charge voltage.
I use the Atmega's interal SRAM to take ~100 instantaneous voltage measurements during the discharge (make-shift oscilloscope) before my code jumps to measure velocity.
False triggering and spontaneous charging is somewhat an issue. In my next build, I will implement optocouplers to the HV and charging circuits. For now, i have some transistors that ground out all critical gates after the firing process completes.
The mega is very very capable. Lots of I/O and a large amount of memory.
Try not to fry pins - it makes programming a little more complicated. ;) I found out that they don't like direct exposure to 400v.
This site is powered by e107, which is released under the GNU GPL License. All work on this site, except where otherwise noted, is licensed under a Creative Commons Attribution-ShareAlike 2.5 License. By submitting any information to this site, you agree that anything submitted will be so licensed. Please read our Disclaimer and Policies page for information on your rights and responsibilities regarding this site.