def main(): p = site_config.add_arguments() parser = make_parser(parser=p) args = parser.parse_args() # Interpret options in the context of site_config. site_config.reparse_args(args, 'CapSensorAgent') # Automatically acquire data if requested if args.mode == 'acq': init_params = {'auto_acquire': True} else: init_params = {'auto_acquire': False} agent, runner = ocs_agent.init_site_agent(args) kwargs = {"config_file": args.config} cap = CapSensor_Agent(agent, **kwargs) agent.register_task('init_cap', cap.init_task, startup=init_params) agent.register_task('offset', cap.offset) agent.register_process('acq', cap.acq, cap.stop_acq) runner.run(agent, auto_reconnect=True) if args.mode != 'idle': agent.start('init_cap')
def main(): '''Boot OCS agent''' txaio.start_logging(level=os.environ.get('LOGLEVEL', 'info')) parser = site_config.add_arguments() args = parser.parse_args() site_config.reparse_args(args, 'BLE2Agent') agent_inst, runner = ocs_agent.init_site_agent(args) ble2_agent = BLE2Agent(agent_inst) agent_inst.register_task('set_values', ble2_agent.set_values) agent_inst.register_task('start_rotation', ble2_agent.start_rotation) agent_inst.register_task('stop_rotation', ble2_agent.stop_rotation) agent_inst.register_task('init_ble2', ble2_agent.init_ble2) agent_inst.register_process( 'acq', ble2_agent.start_acq, ble2_agent.stop_acq, ) runner.run(agent_inst, auto_reconnect=True)
def main(): '''Boot OCS agent''' txaio.start_logging(level=os.environ.get('LOGLEVEL', 'info')) parser = site_config.add_arguments() args = parser.parse_args() site_config.reparse_args(args, 'dS378Agent') agent_inst, runner = ocs_agent.init_site_agent(args) kwargs = {} if args.port is not None: kwargs['port'] = args.port if args.ip is not None: kwargs['ip'] = args.ip ds_agent = dS378Agent(agent_inst, **kwargs) agent_inst.register_task('set_relay', ds_agent.set_relay) agent_inst.register_task('get_relays', ds_agent.get_relays) agent_inst.register_process('acq', ds_agent.start_acq, ds_agent.stop_acq, startup=True) runner.run(agent_inst, auto_reconnect=True)
def main(): site_parser = site_config.add_arguments() parser = make_parser(site_parser) # Get the parser to process the command line. args = parser.parse_args() # Interpret options in the context of site_config. site_config.reparse_args(args, 'CryomechCPAAgent') print('I am in charge of device with serial number: %s' % args.serial_number) # Automatically acquire data if requested (default) init_params = False if args.mode == 'init': init_params = {'auto_acquire': False} elif args.mode == 'acq': init_params = {'auto_acquire': True} # Call launcher function (initiates connection to appropriate # WAMP hub and realm). agent, runner = ocs_agent.init_site_agent(args) # create agent instance and run log creation ptc = PTCAgent(agent, args.port, args.ip_address, fake_errors=args.fake_errors) agent.register_task('init', ptc.init_ptc_task, startup=init_params) agent.register_process('acq', ptc.start_acq, ptc.stop_acq) runner.run(agent, auto_reconnect=True)
def main(): parser = site_config.add_arguments() parser = make_parser(parser) args = parser.parse_args() site_config.reparse_args(args, 'PysmurfArchiverAgent') if args.target is None: raise Exception("Argument --target is required") if type(args.target) == str: args.target = [args.target] agent, runner = ocs_agent.init_site_agent(args) archiver = PysmurfArchiverAgent(agent, data_dir=args.data_dir, targets=args.target, host=args.host) agent.register_process('run', archiver.run, archiver.stop, startup=True) runner.run(agent, auto_reconnect=True)
if f.type == core.G3FrameType.Housekeeping: last_meta = f writer(f) if (datetime.utcnow().timestamp() - ts) > time_per_file: writer(core.G3Frame(core.G3FrameType.EndProcessing)) writer = None if writer is not None: writer(core.G3Frame(core.G3FrameType.EndProcessing)) return True, "Finished Streaming" def stop_stream(self, session, params=None): self.is_streaming = False return True, "Stopping Streaming" if __name__ == '__main__': parser = site_config.add_arguments() args = parser.parse_args() site_config.reparse_args(args, 'G3StreamListener') agent, runner = ocs_agent.init_site_agent(args) listener = G3StreamListener(agent, port=int(args.port)) agent.register_process('stream', listener.start_stream, listener.stop_stream) runner.run(agent, auto_reconnect=True)
return True, 'Initialized PSU.' if __name__ == '__main__': parser = site_config.add_arguments() # Add options specific to this agent. pgroup = parser.add_argument_group('Agent Options') pgroup.add_argument('--ip-address') pgroup.add_argument('--gpib-slot') # Parse comand line. args = parser.parse_args() # Interpret options in the context of site_config. site_config.reparse_args(args, 'Keithley2230G-PSU') agent, runner = ocs_agent.init_site_agent(args) p = Keithley2230GAgent(agent, args.ip_address, int(args.gpib_slot)) agent.register_task('init', p.init_psu) agent.register_task('set_voltage', p.set_voltage) agent.register_task('set_current', p.set_current) agent.register_task('set_output', p.set_output) agent.register_process('monitor_output', p.monitor_output, p.stop_monitoring) runner.run(agent, auto_reconnect=True)
def stop_acq(self, session, params=None): """ End pressure data acquisition """ if self.take_data: self.take_data = False self.gauge.close() return True, 'requested to stop taking data.' else: return False, 'acq is not currently running' if __name__ == '__main__': parser = site_config.add_arguments() pgroup = parser.add_argument_group('Agent Options') pgroup.add_argument('--ip_address') pgroup.add_argument('--port') args = parser.parse_args() site_config.reparse_args(args, 'PfeifferAgent') agent, runner = ocs_agent.init_site_agent(args) pfeiffer_agent = PfeifferAgent(agent, args.ip_address, args.port) agent.register_process('acq', pfeiffer_agent.start_acq, pfeiffer_agent.stop_acq, startup=True) agent.register_task('close', pfeiffer_agent.stop_acq) runner.run(agent, auto_reconnect=True)
""" Stops the data acquisiton. """ if self.take_data: self.take_data = False return True, 'requested to stop taking data.' else: return False, 'acq is not currently running.' if __name__ == '__main__': parser = site_config.add_arguments() pgroup = parser.add_argument_group('Agent Options') args = parser.parse_args() site_config.reparse_args(args, 'HWPSimulatorAgent') agent, runner = ocs_agent.init_site_agent(args) arduino_agent = ArduinoAgent(agent) agent.register_task('init_arduino', arduino_agent.init_arduino) agent.register_process('acq', arduino_agent.start_acq, arduino_agent.stop_acq, startup=True) runner.run(agent, auto_reconnect=True)
pgroup = parser.add_argument_group('Agent Options') pgroup.add_argument('--ip-address') pgroup.add_argument('--gpib-slot') return parser if __name__ == '__main__': site_parser = site_config.add_arguments() parser = make_parser(site_parser) # Get the parser to process the command line. args = parser.parse_args() # Interpret options in the context of site_config. site_config.reparse_args(args, 'ScpiPsuAgent') agent, runner = ocs_agent.init_site_agent(args) p = ScpiPsuAgent(agent, args.ip_address, int(args.gpib_slot)) agent.register_task('init', p.init_psu) agent.register_task('set_voltage', p.set_voltage) agent.register_task('set_current', p.set_current) agent.register_task('set_output', p.set_output) agent.register_process('monitor_output', p.monitor_output, p.stop_monitoring) runner.run(agent, auto_reconnect=True)
pgroup.add_argument("--stream-id", default="stream_sim", help="Stream ID for the simulator.") return parser if __name__ == '__main__': # Start logging txaio.start_logging(level=environ.get("LOGLEVEL", "info")) site_parser = site_config.add_arguments() parser = make_parser(site_parser) args = parser.parse_args() site_config.reparse_args(args, 'SmurfStreamSimulator') agent, runner = ocs_agent.init_site_agent(args) sim = SmurfStreamSimulator(agent, target_host=args.target_host, port=int(args.port), num_chans=int(args.num_chans), stream_id=args.stream_id) agent.register_process('stream', sim.start_background_streamer, sim.stop_background_streamer, startup=bool(args.auto_start)) agent.register_task('start', sim.set_stream_on) agent.register_task('stop', sim.set_stream_off)
return False, "Script has been killed" def abort_script(self, session, params=None): """ Aborts the currently running script """ self.prot.transport.signalProcess('KILL') return True, "Aborting process" if __name__ == '__main__': parser = site_config.add_arguments() pgroup = parser.add_argument_group('Agent Options') pgroup.add_argument('--udp-port') pgroup.add_argument('--udp-ip') args = parser.parse_args() site_config.reparse_args(args, 'PysmurfController') agent, runner = ocs_agent.init_site_agent(args) controller = PysmurfController(agent, args.udp_ip, int(args.udp_port)) agent.register_task('run', controller.run_script) agent.register_task('abort', controller.abort_script) reactor.listenUDP(int(args.udp_port), controller) runner.run(agent, auto_reconnect=True)
# Add options specific to this agent. pgroup = parser.add_argument_group('Agent Options') pgroup.add_argument('--ip-address') pgroup.add_argument('--username') pgroup.add_argument('--password') return parser if __name__ == '__main__': site_parser = site_config.add_arguments() parser = make_parser(site_parser) # Get the parser to process the command line. args = parser.parse_args() # Interpret options in the context of site_config. site_config.reparse_args(args, 'SynAccAgent') agent, runner = ocs_agent.init_site_agent(args) p = SynaccessAgent(agent, ip_address=args.ip_address, username=args.username, password=args.password) agent.register_task('get_status', p.get_status, startup={}) agent.register_task('reboot', p.reboot) agent.register_task('set_outlet', p.set_outlet) agent.register_task('set_all', p.set_all) runner.run(agent, auto_reconnect=True)
return parser if __name__ == "__main__": # Start logging txaio.start_logging(level=environ.get("LOGLEVEL", "info")) # Get the default ocs agrument parser site_parser = site_config.add_arguments() parser = make_parser(site_parser) # Parse commandline args = parser.parse_args() site_config.reparse_args(args, "SmurfRecorder") agent, runner = ocs_agent.init_site_agent(args) listener = SmurfRecorder(agent, int(args.time_per_file), args.data_dir, address=args.address, port=int(args.port)) agent.register_process("record", listener.start_record, listener.stop_record, startup=bool(args.auto_start)) runner.run(agent, auto_reconnect=True)
def main(): # Start logging txaio.start_logging(level=os.environ.get("LOGLEVEL", "info")) p = site_config.add_arguments() parser = make_parser(parser=p) #Not used anymore, but we don't it to break the agent if these args are passed parser.add_argument('--fake-data', help=argparse.SUPPRESS) parser.add_argument('--num-channels', help=argparse.SUPPRESS) args = parser.parse_args() if args.fake_data is not None: warnings.warn( "WARNING: the --fake-data parameter is deprecated, please " "remove from your site-config file", DeprecationWarning) if args.num_channels is not None: warnings.warn( "WARNING: the --num-channels parameter is deprecated, please " "remove from your site-config file", DeprecationWarning) # Interpret options in the context of site_config. site_config.reparse_args(args, 'Lakeshore240Agent') # Automatically acquire data if requested (default) init_params = False if args.mode == 'init': init_params = {'auto_acquire': False} elif args.mode == 'acq': init_params = {'auto_acquire': True} device_port = None if args.port is not None: device_port = args.port else: # Tries to find correct USB port automatically # This exists if udev rules are setup properly for the 240s if os.path.exists('/dev/{}'.format(args.serial_number)): device_port = "/dev/{}".format(args.serial_number) elif os.path.exists('/dev/serial/by-id'): ports = os.listdir('/dev/serial/by-id') for port in ports: if args.serial_number in port: device_port = "/dev/serial/by-id/{}".format(port) print("Found port {}".format(device_port)) break if device_port is None: print("Could not find device port for {}".format(args.serial_number)) return agent, runner = ocs_agent.init_site_agent(args) kwargs = {'port': device_port} if args.sampling_frequency is not None: kwargs['f_sample'] = float(args.sampling_frequency) therm = LS240_Agent(agent, **kwargs) agent.register_task('init_lakeshore', therm.init_lakeshore_task, startup=init_params) agent.register_task('set_values', therm.set_values) agent.register_task('upload_cal_curve', therm.upload_cal_curve) agent.register_process('acq', therm.start_acq, therm.stop_acq) runner.run(agent, auto_reconnect=True)
self.agent.feeds['HWPEncoder'].flush_buffer() return True, 'Acquisition exited cleanly.' def stop_acq(self, session, params=None): """ Stops the data acquisiton. """ if self.take_data: self.take_data = False return True, 'requested to stop taking data.' return False, 'acq is not currently running.' # Portion of the code that runs if __name__ == '__main__': parser = site_config.add_arguments() pgroup = parser.add_argument_group('Agent Options') pgroup.add_argument('--port', default=8080) args = parser.parse_args() site_config.reparse_args(args, 'HWPBBBAgent') agent, runner = ocs_agent.init_site_agent(args) hwp_bbb_agent = HWPBBBAgent(agent, port=args.port) agent.register_process('acq', hwp_bbb_agent.start_acq, hwp_bbb_agent.stop_acq, startup=True) runner.run(agent, auto_reconnect=True)
pgroup.add_argument('--function-file', default='None') pgroup.add_argument('--sampling-frequency', default='2.5') return parser if __name__ == '__main__': # Start logging txaio.start_logging(level=os.environ.get("LOGLEVEL", "info")) site_parser = site_config.add_arguments() parser = make_parser(site_parser) args = parser.parse_args() site_config.reparse_args(args, 'LabJackAgent') init_params = False if args.mode == 'acq': init_params = {'auto_acquire': True} ip_address = str(args.ip_address) active_channels = args.active_channels function_file = str(args.function_file) sampling_frequency = float(args.sampling_frequency) agent, runner = ocs_agent.init_site_agent(args) sensors = LabJackAgent(agent, ip_address=ip_address, active_channels=active_channels,
pgroup.add_argument("--port", default=161, help="Port to listen on.") return parser if __name__ == "__main__": # Start logging txaio.start_logging(level=environ.get("LOGLEVEL", "info")) # Get the default ocs agrument parser site_parser = site_config.add_arguments() parser = make_parser(site_parser) # Parse commandline args = parser.parse_args() site_config.reparse_args(args, "MeinbergM1000Agent") agent, runner = ocs_agent.init_site_agent(args) listener = MeinbergM1000Agent(agent, address=args.address, port=int(args.port)) agent.register_process("acq", listener.start_acq, listener.stop_acq, startup=bool(args.auto_start), blocking=False) runner.run(agent, auto_reconnect=True)
parser = argparse.ArgumentParser() pgroup = parser.add_argument_group('Agent Config') pgroup.add_argument('--udp-port', type=int, help="Port for upd-publisher") pgroup.add_argument('--create-table', type=bool, help="Specifies whether agent should create or update " "pysmurf_files table if non exists.", default=True) return parser if __name__ == '__main__': parser = site_config.add_arguments() parser = make_parser(parser) args = parser.parse_args() site_config.reparse_args(args, 'PysmurfMonitor') agent, runner = ocs_agent.init_site_agent(args) monitor = PysmurfMonitor(agent, args) agent.register_task('init', monitor.init, startup=True) reactor.listenUDP(args.udp_port, monitor) runner.run(agent, auto_reconnect=True)
True: 'Requested process stop.', False: 'Failed to request process stop.' }[ok]) if __name__ == '__main__': # Get the default ocs argument parser. parser = site_config.add_arguments() # Add options specific to this agent. pgroup = parser.add_argument_group('Agent Options') pgroup.add_argument('--log-directory') # Parse comand line. args = parser.parse_args() # Interpret options in the context of site_config. site_config.reparse_args(args, 'BlueforsAgent') print('I am following logs located at : %s' % args.log_directory) agent, runner = ocs_agent.init_site_agent(args) bluefors_agent = BlueforsAgent(agent, args.log_directory) agent.register_process('acq', bluefors_agent.start_acq, bluefors_agent.stop_acq, startup=True) runner.run(agent, auto_reconnect=True)
# Add options specific to this agent. pgroup = parser.add_argument_group('Agent Options') pgroup.add_argument('--ip-address') pgroup.add_argument('--serial-number') pgroup.add_argument('--mode') pgroup.add_argument('--fake-data', type=int, default=0, help='Set non-zero to fake data, without hardware.') # Parse comand line. args = parser.parse_args() # Interpret options in the context of site_config. site_config.reparse_args(args, 'Lakeshore372Agent') print('I am in charge of device with serial number: %s' % args.serial_number) agent, runner = ocs_agent.init_site_agent(args) lake_agent = LS372_Agent(agent, args.serial_number, args.ip_address, fake_data=False) agent.register_task('init_lakeshore', lake_agent.init_lakeshore_task) agent.register_task('set_heater_range', lake_agent.set_heater_range) agent.register_task('set_excitation_mode', lake_agent.set_excitation_mode) agent.register_task('set_excitation', lake_agent.set_excitation) agent.register_task('set_pid', lake_agent.set_pid)
else: return False, "Could not acquire lock" return True, 'Initialized AWG.' if __name__ == '__main__': parser = site_config.add_arguments() # Add options specific to this agent. pgroup = parser.add_argument_group('Agent Options') pgroup.add_argument('--ip-address') pgroup.add_argument('--gpib-slot') # Parse comand line. args = parser.parse_args() # Interpret options in the context of site_config. site_config.reparse_args(args, 'Tektronix AWG') agent, runner = ocs_agent.init_site_agent(args) p = TektronixAWGAgent(agent, args.ip_address, int(args.gpib_slot)) agent.register_task('init', p.init_awg) agent.register_task('set_frequency', p.set_frequency) agent.register_task('set_amplitude', p.set_amplitude) agent.register_task('set_output', p.set_output) runner.run(agent, auto_reconnect=True)