def main(): parser = argparse.ArgumentParser(description='Use ezlaze to fuzz dice') #parser.add_argument('--prog', default='/dev/ttyUSB0', help='minipro serial port') parser.add_argument('--prog-dev', default='pic16f84', help='microchip device') parser.add_argument('--cnc', default='mk-bs', help='LinuxCNC host') parser.add_argument('--dry', action='store_true', help='Dry run') parser.add_argument('fout', nargs='?', default='pwrmap.csv', help='Store data to') args = parser.parse_args() if os.path.exists(args.fout): raise Exception("Refusing to overwrite") hal = None elt = None try: print print 'Initializing LCNC' hal = lcnc_ar.LcncPyHalAr(host=args.cnc, dry=args.dry, log=None) print print 'Initializing programmer' prog = Minipro(device=args.prog_dev) # frickin laser print print 'Initializing laser' el = EzLaze(args.ezlaze) # Max speed ''' Readout should complete within 0.601 sec (command line) At 5 hz need at least 4 pulses, lets do 5 (1.0 sec) ''' el.pulse(hz=5) el.burst(n=5) elt = ELT(el) elt.start() print print 'Running' run(hal, prog, el, elt, fout=args.fout, dry=args.dry) finally: print 'Shutting down laser thread' if elt: elt.running = False print 'Shutting down hal' if hal: hal.ar_stop()
from uvscada.ezlaze import EzLaze import time # frickin laser el = EzLaze() #el.off() #el.on() if not el.is_on(): el.on() for i in xrange(3): el.pulse() time.sleep(0.1)
hal = lcnc_ar.LcncPyHalAr(host=args.cnc, dry=args.dry, log=None) print print 'Initializing programmer' prog = Minipro(device=args.prog_dev) # frickin laser print print 'Initializing laser' el = EzLaze(args.ezlaze) # Max speed ''' Readout should complete within 0.601 sec (command line) At 5 hz need at least 4 pulses, lets do 5 (1.0 sec) ''' el.pulse(hz=5) el.burst(n=5) elt = ELT(el) elt.start() print print 'Running' main(hal, prog, el, elt) finally: print 'Shutting down laser thread' if elt: elt.running = False print 'Shutting down hal' if hal: hal.ar_stop()