Contents:
In [3]:
from bluesky import Mover, SynGauss, Msg, RunEngine
motor = Mover('motor', ['pos'])
det = SynGauss('det', motor, 'pos', center=0, Imax=1, sigma=1)
In [2]:
Msg('set', motor, {'pos': 5})
Out[2]:
set: (mover: motor), ({'pos': 5},), {}
In [3]:
Msg('trigger', motor)
Out[3]:
trigger: (mover: motor), (), {}
In [4]:
Msg('read', motor)
Out[4]:
read: (mover: motor), (), {}
In [5]:
RE = RunEngine()
In [6]:
def simple_scan(motor):
"Set, trigger, read"
yield Msg('set', motor, {'pos': 5})
yield Msg('trigger', motor)
yield Msg('read', motor)
RE.run(simple_scan(motor))
*** Emitted RunStart:
{'scan_id': 123, 'beamline_id': 'test', 'time': 1433200333.711525, 'uid': '0c501179-663e-4c59-8fa1-c1f08d5abd5a', 'owner': 'tester'}
set: (mover: motor), ({'pos': 5},), {}
ret: None
trigger: (mover: motor), (), {}
ret: None
read: (mover: motor), (), {}
ret: {'pos': {'timestamp': 1433200333.816046, 'value': 5}}
*** Emitted RunStop:
{'time': 1433200333.816548, 'reason': '', 'run_start': '0c501179-663e-4c59-8fa1-c1f08d5abd5a', 'exit_status': 'success'}
Moving a motor and reading it back is boring. Let's add a detector.
In [7]:
def simple_scan2(motor, det):
"Set, trigger motor, trigger detector, read"
yield Msg('set', motor, {'pos': 5})
yield Msg('trigger', motor)
yield Msg('trigger', det)
yield Msg('read', det)
RE.run(simple_scan2(motor, det))
*** Emitted RunStart:
{'scan_id': 123, 'beamline_id': 'test', 'time': 1433200334.450315, 'uid': 'b748a661-92a5-478e-929f-f01d21d20cbf', 'owner': 'tester'}
set: (mover: motor), ({'pos': 5},), {}
ret: None
trigger: (mover: motor), (), {}
ret: None
trigger: (reader: sg), (), {}
ret: None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433200334.554163, 'value': 3.7266531720786709e-06}}
*** Emitted RunStop:
{'time': 1433200334.554385, 'reason': '', 'run_start': 'b748a661-92a5-478e-929f-f01d21d20cbf', 'exit_status': 'success'}
Above we the three messages with the responses they generated from the RunEngine. We can use these responses to make our scan adaptive.
In [8]:
def adaptive_scan(motor, det, threshold):
"""Set, trigger, read until the detector reads intensity < threshold"""
i = 0
while True:
print("LOOP %d" % i)
yield Msg('set', motor, {'pos': i})
yield Msg('trigger', motor)
yield Msg('trigger', det)
reading = yield Msg('read', det)
if reading['det']['value'] < threshold:
print('DONE')
break
i += 1
RE.run(adaptive_scan(motor, det, 0.2))
*** Emitted RunStart:
{'scan_id': 123, 'beamline_id': 'test', 'time': 1433200335.067558, 'uid': '6fd64ba4-4243-4b13-a440-6daca20a21dd', 'owner': 'tester'}
LOOP 0
set: (mover: motor), ({'pos': 0},), {}
ret: None
trigger: (mover: motor), (), {}
ret: None
trigger: (reader: sg), (), {}
ret: None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433200335.170066, 'value': 1.0}}
LOOP 1
set: (mover: motor), ({'pos': 1},), {}
ret: None
trigger: (mover: motor), (), {}
ret: None
trigger: (reader: sg), (), {}
ret: None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433200335.272588, 'value': 0.60653065971263342}}
LOOP 2
set: (mover: motor), ({'pos': 2},), {}
ret: None
trigger: (mover: motor), (), {}
ret: None
trigger: (reader: sg), (), {}
ret: None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433200335.373499, 'value': 0.1353352832366127}}
DONE
*** Emitted RunStop:
{'time': 1433200335.373757, 'reason': '', 'run_start': '6fd64ba4-4243-4b13-a440-6daca20a21dd', 'exit_status': 'success'}
The 'sleep' command is as simple as it sounds.
In [9]:
def sleepy_scan(motor, det):
"Set, trigger motor, sleep for a fixed time, trigger detector, read"
yield Msg('set', motor, {'pos': 5})
yield Msg('trigger', motor)
yield Msg('sleep', None, 2) # units: seconds
yield Msg('trigger', det)
yield Msg('read', det)
RE.run(sleepy_scan(motor, det))
*** Emitted RunStart:
{'scan_id': 123, 'beamline_id': 'test', 'time': 1433200335.621367, 'uid': 'aa3261a4-3754-4d10-91cb-9f8633d98716', 'owner': 'tester'}
set: (mover: motor), ({'pos': 5},), {}
ret: None
trigger: (mover: motor), (), {}
ret: None
sleep: (None), (2,), {}
ret: None
trigger: (reader: sg), (), {}
ret: None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433200337.727224, 'value': 3.7266531720786709e-06}}
*** Emitted RunStop:
{'time': 1433200337.727427, 'reason': '', 'run_start': 'aa3261a4-3754-4d10-91cb-9f8633d98716', 'exit_status': 'success'}
In [10]:
def wait_one(motor, det):
"Set, trigger, read"
yield Msg('set', motor, {'pos': 5})
yield Msg('trigger', motor, block_group='A') # Add motor to group 'A'.
yield Msg('wait', None, 'A') # Wait for everything in group 'A' to report done.
yield Msg('trigger', det)
yield Msg('read', det)
RE.run(wait_one(motor, det))
*** Emitted RunStart:
{'scan_id': 123, 'beamline_id': 'test', 'time': 1433200338.061751, 'uid': '3a6878f1-7f0e-42be-9fd8-166b8e693dfc', 'owner': 'tester'}
set: (mover: motor), ({'pos': 5},), {}
ret: None
trigger: (mover: motor), (), {'block_group': 'A'}
ret: None
wait: (None), ('A',), {}
ret: {mover: motor}
trigger: (reader: sg), (), {}
ret: None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433200338.163799, 'value': 3.7266531720786709e-06}}
*** Emitted RunStop:
{'time': 1433200338.16401, 'reason': '', 'run_start': '3a6878f1-7f0e-42be-9fd8-166b8e693dfc', 'exit_status': 'success'}
Notice, in the log, that the response to wait
is the set of Movers the scan was waiting on.
In [11]:
def wait_multiple(motors, det):
"Set motors, trigger all motors, wait for all motors to move."
for motor in motors:
yield Msg('set', motor, {'pos': 5})
yield Msg('trigger', motor, block_group='A') # Trigger each motor and add it to group 'A'.
yield Msg('wait', None, 'A') # Wait for everything in group 'A' to report done.
yield Msg('trigger', det)
yield Msg('read', det)
motor1 = Mover('motor1', ['pos'])
motor2 = Mover('motor2', ['pos'])
RE.run(wait_multiple([motor1, motor2], det))
*** Emitted RunStart:
{'scan_id': 123, 'beamline_id': 'test', 'time': 1433200338.440964, 'uid': '1efb65b6-9c3c-4b3f-ba05-c4413af72f9c', 'owner': 'tester'}
set: (mover: motor1), ({'pos': 5},), {}
ret: None
trigger: (mover: motor1), (), {'block_group': 'A'}
ret: None
set: (mover: motor2), ({'pos': 5},), {}
ret: None
trigger: (mover: motor2), (), {'block_group': 'A'}
ret: None
wait: (None), ('A',), {}
ret: {mover: motor2, mover: motor1}
trigger: (reader: sg), (), {}
ret: None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433200338.646742, 'value': 3.7266531720786709e-06}}
*** Emitted RunStop:
{'time': 1433200338.646963, 'reason': '', 'run_start': '1efb65b6-9c3c-4b3f-ba05-c4413af72f9c', 'exit_status': 'success'}
If the 'A'
bit seems pointless, the payoff is here. We trigger all the motors at once, wait for the first two, read, wait for the last one, and read again. This is merely meant to show that complex control flow is possible.
In [12]:
def wait_complex(motors, det):
"Set motors, trigger motors, wait for all motors to move."
# Same as above...
for motor in motors[:-1]:
yield Msg('set', motor, {'pos': 5})
yield Msg('trigger', motor, block_group='A')
# ...but put the last motor is separate group.
yield Msg('set', motors[-1], {'pos': 5})
yield Msg('trigger', motors[-1], block_group='B')
yield Msg('wait', None, 'A') # Wait for everything in group 'A' to report done.
yield Msg('trigger', det)
yield Msg('read', det)
yield Msg('wait', None, 'B') # Wait for everything in group 'B' to report done.
yield Msg('trigger', det)
yield Msg('read', det)
motor3 = Mover('motor3', ['pos'])
RE.run(wait_complex([motor1, motor2, motor3], det))
*** Emitted RunStart:
{'scan_id': 123, 'beamline_id': 'test', 'time': 1433200338.991371, 'uid': '604c092e-372b-4000-9955-f461ecc8e699', 'owner': 'tester'}
set: (mover: motor1), ({'pos': 5},), {}
ret: None
trigger: (mover: motor1), (), {'block_group': 'A'}
ret: None
set: (mover: motor2), ({'pos': 5},), {}
ret: None
trigger: (mover: motor2), (), {'block_group': 'A'}
ret: None
set: (mover: motor3), ({'pos': 5},), {}
ret: None
trigger: (mover: motor3), (), {'block_group': 'B'}
ret: None
wait: (None), ('A',), {}
ret: {mover: motor2, mover: motor1}
trigger: (reader: sg), (), {}
ret: None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433200339.304084, 'value': 3.7266531720786709e-06}}
wait: (None), ('B',), {}
ret: {mover: motor3}
trigger: (reader: sg), (), {}
ret: None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433200339.304396, 'value': 3.7266531720786709e-06}}
*** Emitted RunStop:
{'time': 1433200339.304572, 'reason': '', 'run_start': '604c092e-372b-4000-9955-f461ecc8e699', 'exit_status': 'success'}
In [23]:
def conditional_hard_pause(motor, det):
for i in range(5):
yield Msg('checkpoint')
yield Msg('set', motor, {'pos': i})
yield Msg('trigger', motor)
yield Msg('trigger', det)
reading = yield Msg('read', det)
if reading['det']['value'] < 0.2:
yield Msg('pause', hard=True)
RE.run(conditional_hard_pause(motor, det))
*** Emitted RunStart:
{'scan_id': 123, 'beamline_id': 'test', 'time': 1433200391.553959, 'uid': 'c7d1c2f6-aa33-4afd-8274-87c88b9e95b2', 'owner': 'tester'}
checkpoint: (None), (), {}
ret: None
set: (mover: motor), ({'pos': 0},), {}
ret: None
trigger: (mover: motor), (), {}
ret: None
trigger: (reader: sg), (), {}
ret: None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433200391.657081, 'value': 1.0}}
checkpoint: (None), (), {}
ret: None
set: (mover: motor), ({'pos': 1},), {}
ret: None
trigger: (mover: motor), (), {}
ret: None
trigger: (reader: sg), (), {}
ret: None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433200391.758711, 'value': 0.60653065971263342}}
checkpoint: (None), (), {}
ret: None
set: (mover: motor), ({'pos': 2},), {}
ret: None
trigger: (mover: motor), (), {}
ret: None
trigger: (reader: sg), (), {}
ret: None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433200391.864589, 'value': 0.1353352832366127}}
pause: (None), (), {'hard': True}
ret: None
*** Hard pause requested. Sleeping until resume() is called. Will rerun from last 'checkpoint' command.
The scan thread sleeps and waits for more user input, to resume or abort. (On resume, this example will obviously hit the same pause condition again --- nothing has changed.)
In [24]:
RE.state
Out[24]:
'idle'
In [20]:
RE.resume()
*** Rerunning from checkpoint...
set: (mover: motor), ({'pos': 2},), {}
ret: None (On rerun, responses are not sent.)
trigger: (mover: motor), (), {}
ret: None (On rerun, responses are not sent.)
trigger: (reader: sg), (), {}
ret: None (On rerun, responses are not sent.)
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433200371.401848, 'value': 0.1353352832366127}} (On rerun, responses are not sent.)
pause: (None), (), {'hard': True}
ret: None (On rerun, responses are not sent.)
checkpoint: (None), (), {}
ret: None
*** Hard pause requested. Sleeping until resume() is called. Will rerun from last 'checkpoint' command.
In [21]:
RE.state
Out[21]:
'idle'
In [22]:
RE.abort()
*** Emitted RunStop:
{'time': 1433200378.940203, 'reason': '', 'run_start': 'f2c85740-29f7-4b91-81f5-94e21eb95706', 'exit_status': 'abort'}
*** Rerunning from checkpoint...
checkpoint: (None), (), {}
ret: None
set: (mover: motor), ({'pos': 3},), {}
ret: None
trigger: (mover: motor), (), {}
ret: None
trigger: (reader: sg), (), {}
ret: None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433200379.389682, 'value': 0.011108996538242306}}
*** Emitted RunStop:
{'time': 1433200379.389933, 'reason': "Cannot transit from 'idle' to 'hard_pausing'.", 'run_start': 'f2c85740-29f7-4b91-81f5-94e21eb95706', 'exit_status': 'fail'}
Exception in thread Thread-11:
Traceback (most recent call last):
File "/Users/dallan/miniconda/envs/py3/lib/python3.4/threading.py", line 920, in _bootstrap_inner
self.run()
File "/Users/dallan/miniconda/envs/py3/lib/python3.4/threading.py", line 868, in run
self._target(*self._args, **self._kwargs)
File "/Users/dallan/Documents/Repos/bluesky/bs.py", line 302, in func
return self.run_engine(gen)
File "/Users/dallan/Documents/Repos/bluesky/bs.py", line 374, in run_engine
raise RunInterrupt("Run aborted.")
RunInterrupt: Run aborted.
Exception in thread Thread-12:
Traceback (most recent call last):
File "/Users/dallan/miniconda/envs/py3/lib/python3.4/threading.py", line 920, in _bootstrap_inner
self.run()
File "/Users/dallan/miniconda/envs/py3/lib/python3.4/threading.py", line 868, in run
self._target(*self._args, **self._kwargs)
File "/Users/dallan/Documents/Repos/bluesky/bs.py", line 302, in func
return self.run_engine(gen)
File "/Users/dallan/Documents/Repos/bluesky/bs.py", line 396, in run_engine
raise err
File "/Users/dallan/Documents/Repos/bluesky/bs.py", line 388, in run_engine
response = self._command_registry[msg.command](msg)
File "/Users/dallan/Documents/Repos/bluesky/bs.py", line 517, in _pause
self.request_pause(*msg.args, **msg.kwargs)
File "/Users/dallan/Documents/Repos/bluesky/bs.py", line 273, in request_pause
self._sm.hard_pause()
File "/Users/dallan/miniconda/envs/py3/lib/python3.4/site-packages/super_state_machine/utils.py", line 95, in setter
self.set_(value)
File "/Users/dallan/miniconda/envs/py3/lib/python3.4/site-packages/super_state_machine/utils.py", line 39, in set_
self.actual_state.value, state.value))
super_state_machine.errors.TransitionError: Cannot transit from 'idle' to 'hard_pausing'.
In [111]:
def conditional_soft_pause(motor, det):
for i in range(5):
yield Msg('checkpoint')
yield Msg('set', motor, {'pos': i})
yield Msg('trigger', motor)
yield Msg('trigger', det)
reading = yield Msg('read', det)
if reading['det']['value'] < 0.2:
yield Msg('pause', hard=False)
# If a soft pause is requested, the Run Engine will
# still execute these messages before pausing.
yield Msg('set', motor, {'pos': i + 0.5})
yield Msg('trigger', motor)
RE.run(conditional_soft_pause(motor, det))
*** Emitted RunStart:
{'owner': 'tester', 'beamline_id': 'test', 'uid': 'd3bebb1d-3482-4135-842e-fa77c5ad44cd', 'time': 1433200224.459399, 'scan_id': 123}
checkpoint: (None), (), {}
ret: None
set: (mover: motor), ({'pos': 0},), {}
ret: None
trigger: (mover: motor), (), {}
ret: None
trigger: (reader: sg), (), {}
ret: None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433200224.564059, 'value': 1.0}}
set: (mover: motor), ({'pos': 0.5},), {}
ret: None
trigger: (mover: motor), (), {}
ret: None
checkpoint: (None), (), {}
ret: None
set: (mover: motor), ({'pos': 1},), {}
ret: None
trigger: (mover: motor), (), {}
ret: None
trigger: (reader: sg), (), {}
ret: None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433200224.774573, 'value': 0.60653065971263342}}
set: (mover: motor), ({'pos': 1.5},), {}
ret: None
trigger: (mover: motor), (), {}
ret: None
checkpoint: (None), (), {}
ret: None
set: (mover: motor), ({'pos': 2},), {}
ret: None
trigger: (mover: motor), (), {}
ret: None
trigger: (reader: sg), (), {}
ret: None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433200224.985466, 'value': 0.1353352832366127}}
pause: (None), (), {'hard': False}
ret: None
*** Soft pause requested. Continuing to process messages until the next 'checkpoint' command.
set: (mover: motor), ({'pos': 2.5},), {}
ret: None
*** Soft pause requested. Continuing to process messages until the next 'checkpoint' command.
trigger: (mover: motor), (), {}
ret: None
*** Soft pause requested. Continuing to process messages until the next 'checkpoint' command.
*** Checkpoint reached. Sleeping until resume() is called. Will resume from checkpoint.
In [113]:
RE.run(sleepy_scan(motor, det))
*** Emitted RunStart:
{'owner': 'tester', 'beamline_id': 'test', 'uid': '321f502e-d91f-4ce3-ab45-f948783c6a81', 'time': 1433200230.725803, 'scan_id': 123}
set: (mover: motor), ({'pos': 5},), {}
ret: None
trigger: (mover: motor), (), {}
ret: None
checkpoint: (None), (), {}
ret: None
set: (mover: motor), ({'pos': 4},), {}
ret: None
trigger: (mover: motor), (), {}
ret: None
trigger: (reader: sg), (), {}
ret: None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433200230.94288, 'value': 0.00033546262790251185}}
pause: (None), (), {'hard': False}
ret: None
*** Soft pause requested. Continuing to process messages until the next 'checkpoint' command.
set: (mover: motor), ({'pos': 4.5},), {}
ret: None
*** Soft pause requested. Continuing to process messages until the next 'checkpoint' command.
trigger: (mover: motor), (), {}
ret: None
*** Soft pause requested. Continuing to process messages until the next 'checkpoint' command.
*** Emitted RunStop:
{'reason': '', 'run_start': '321f502e-d91f-4ce3-ab45-f948783c6a81', 'exit_status': 'success', 'time': 1433200231.046236}
sleep: (None), (2,), {}
ret: None
RunEngine detected a SIGINT (Ctrl+C)
*** Emitted RunStop:
{'reason': '', 'run_start': '321f502e-d91f-4ce3-ab45-f948783c6a81', 'exit_status': 'abort', 'time': 1433200232.832458}
Exception in thread Thread-49:
Traceback (most recent call last):
File "/Users/dallan/miniconda/envs/py3/lib/python3.4/threading.py", line 920, in _bootstrap_inner
self.run()
File "/Users/dallan/miniconda/envs/py3/lib/python3.4/threading.py", line 868, in run
self._target(*self._args, **self._kwargs)
File "/Users/dallan/Documents/Repos/bluesky/bs.py", line 302, in func
return self.run_engine(gen)
File "/Users/dallan/Documents/Repos/bluesky/bs.py", line 405, in run_engine
self._state.stop()
File "/Users/dallan/miniconda/envs/py3/lib/python3.4/site-packages/super_state_machine/utils.py", line 95, in setter
self.set_(value)
File "/Users/dallan/miniconda/envs/py3/lib/python3.4/site-packages/super_state_machine/utils.py", line 39, in set_
self.actual_state.value, state.value))
super_state_machine.errors.TransitionError: Cannot transit from 'paused' to 'idle'.
Exception in thread Thread-48:
Traceback (most recent call last):
File "/Users/dallan/miniconda/envs/py3/lib/python3.4/threading.py", line 920, in _bootstrap_inner
self.run()
File "/Users/dallan/miniconda/envs/py3/lib/python3.4/threading.py", line 868, in run
self._target(*self._args, **self._kwargs)
File "/Users/dallan/Documents/Repos/bluesky/bs.py", line 302, in func
return self.run_engine(gen)
File "/Users/dallan/Documents/Repos/bluesky/bs.py", line 405, in run_engine
self._state.stop()
File "/Users/dallan/miniconda/envs/py3/lib/python3.4/site-packages/super_state_machine/utils.py", line 95, in setter
self.set_(value)
File "/Users/dallan/miniconda/envs/py3/lib/python3.4/site-packages/super_state_machine/utils.py", line 39, in set_
self.actual_state.value, state.value))
super_state_machine.errors.TransitionError: Cannot transit from 'soft_pausing' to 'idle'.
Exception in thread Thread-50:
Traceback (most recent call last):
File "/Users/dallan/miniconda/envs/py3/lib/python3.4/threading.py", line 920, in _bootstrap_inner
self.run()
File "/Users/dallan/miniconda/envs/py3/lib/python3.4/threading.py", line 868, in run
self._target(*self._args, **self._kwargs)
File "/Users/dallan/Documents/Repos/bluesky/bs.py", line 302, in func
return self.run_engine(gen)
File "/Users/dallan/Documents/Repos/bluesky/bs.py", line 362, in run_engine
raise RunInterrupt("*** Hard pause requested. There "
RunInterrupt: *** Hard pause requested. There are no checkpoints. Cannot resume; must abort. Run aborted.
If the scan contains checkpoints, it's possible to resume after Ctrl+C.
In [114]:
def sleepy_scan_checkpoints(motor, det):
"Set, trigger motor, sleep for a fixed time, trigger detector, read"
yield Msg('checkpoint')
yield Msg('set', motor, {'pos': 5})
yield Msg('trigger', motor)
yield Msg('sleep', None, 2) # units: seconds
yield Msg('trigger', det)
yield Msg('read', det)
RE.run(sleepy_scan_checkpoints(motor, det))
*** Emitted RunStart:
{'owner': 'tester', 'beamline_id': 'test', 'uid': '6527d3ca-acbb-4734-a4de-f125a3e6a71b', 'time': 1433200261.587403, 'scan_id': 123}
checkpoint: (None), (), {}
ret: None
set: (mover: motor), ({'pos': 5},), {}
ret: None
trigger: (mover: motor), (), {}
ret: None
sleep: (None), (2,), {}
ret: None
RunEngine detected a SIGINT (Ctrl+C)
*** Hard pause requested. Sleeping until resume() is called. Will rerun from last 'checkpoint' command.
In [115]:
RE.resume()
*** Rerunning from checkpoint...
set: (mover: motor), ({'pos': 5},), {}
ret: None (On rerun, responses are not sent.)
trigger: (mover: motor), (), {}
ret: None (On rerun, responses are not sent.)
sleep: (None), (2,), {}
ret: None (On rerun, responses are not sent.)
trigger: (reader: sg), (), {}
ret: None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433200268.807895, 'value': 3.7266531720786709e-06}}
*** Emitted RunStop:
{'reason': '', 'run_start': '6527d3ca-acbb-4734-a4de-f125a3e6a71b', 'exit_status': 'success', 'time': 1433200268.808127}
In [116]:
RE.run(simple_scan(motor), use_threading=False)
*** Emitted RunStart:
{'owner': 'tester', 'beamline_id': 'test', 'uid': '3f259ad5-b973-402d-9e20-10ffeea3d4d7', 'time': 1433200275.711591, 'scan_id': 123}
set: (mover: motor), ({'pos': 5},), {}
ret: None
trigger: (mover: motor), (), {}
ret: None
read: (mover: motor), (), {}
ret: {'pos': {'timestamp': 1433200275.813738, 'value': 5}}
*** Emitted RunStop:
{'reason': '', 'run_start': '3f259ad5-b973-402d-9e20-10ffeea3d4d7', 'exit_status': 'success', 'time': 1433200275.814685}
In the examples above, the runs have been emitting RunStart and RunStop Documents, but no Events or Event Descriptors. We will add those now.
The 'create'
and 'save'
commands collect all the reads between them into one Event.
If that particular set of objects has never been bundled into an Event during this run, then an Event Descriptor is also created.
All four Documents -- RunStart, RunStop, Event, and EventDescriptor -- are simply Python dictionaries.
In [17]:
def simple_scan_saving(motor, det):
"Set, trigger, read"
yield Msg('create')
yield Msg('set', motor, {'pos': 5})
yield Msg('trigger', motor)
yield Msg('read', motor)
yield Msg('read', det)
yield Msg('save')
RE.run(simple_scan_saving(motor, det))
*** Emitted RunStart:
{'uid': '5aa153e8-4d98-4ce6-91db-e120a814f4b2', 'beamline_id': 'test', 'scan_id': 123, 'owner': 'tester', 'time': 1433039540.5331757}
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': 5},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'timestamp': 1433039540.6636298, 'value': 5}}
MSG_CACHE None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433039539.5095928, 'value': 3.7266531720786709e-06}}
MSG_CACHE None
*** Emitted Event Descriptor:
{'run_start': '5aa153e8-4d98-4ce6-91db-e120a814f4b2', 'uid': 'f193d35d-42c0-40fb-b707-5643aa7b878a', 'time': 1433039540.6943512, 'data_keys': {'pos': {'source': 'motor', 'dtype': 'number'}, 'I': {'source': 'det', 'dtype': 'number'}}}
*** Emitted Event:
{'descriptor': 'f193d35d-42c0-40fb-b707-5643aa7b878a', 'uid': '3d872a53-9495-42cf-aa29-011961e28cf3', 'seq_num': 1, 'time': 1433039540.694491, 'data': {'pos': {'timestamp': 1433039540.6636298, 'value': 5}, 'det': {'timestamp': 1433039539.5095928, 'value': 3.726653172078671e-06}}}
save: (None), (), {}
ret: None
MSG_CACHE None
*** Emitted RunStop:
{'run_start': '5aa153e8-4d98-4ce6-91db-e120a814f4b2', 'reason': '', 'exit_status': 'success', 'time': 1433039540.704733}
In [18]:
def print_event_time(doc):
print('===== EVENT TIME:', doc['time'], '=====')
To use this consumer function during a run:
In [19]:
RE.run(simple_scan_saving(motor, det), subscriptions={'event': print_event_time})
*** Emitted RunStart:
{'uid': 'faea34d4-63b2-476b-8a82-b10a78959df7', 'beamline_id': 'test', 'scan_id': 123, 'owner': 'tester', 'time': 1433039540.9631882}
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': 5},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'timestamp': 1433039541.0937507, 'value': 5}}
MSG_CACHE None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433039539.5095928, 'value': 3.726653172078671e-06}}
MSG_CACHE None
*** Emitted Event Descriptor:
{'run_start': 'faea34d4-63b2-476b-8a82-b10a78959df7', 'uid': 'e63b36e4-5400-47c0-b381-76d0597ba196', 'time': 1433039541.124398, 'data_keys': {'pos': {'source': 'motor', 'dtype': 'number'}, 'I': {'source': 'det', 'dtype': 'number'}}}
*** Emitted Event:
{'descriptor': 'e63b36e4-5400-47c0-b381-76d0597ba196', 'uid': 'e8ffb9e1-315d-4946-b9a4-1a88c28852c3', 'seq_num': 1, 'time': 1433039541.1244798, 'data': {'pos': {'timestamp': 1433039541.0937507, 'value': 5}, 'det': {'timestamp': 1433039539.5095928, 'value': 3.726653172078671e-06}}}
save: (None), (), {}
ret: None
MSG_CACHE None
*** Emitted RunStop:
{'run_start': 'faea34d4-63b2-476b-8a82-b10a78959df7', 'reason': '', 'exit_status': 'success', 'time': 1433039541.1346457}
===== EVENT TIME: 1433039541.1244798 =====
The use it by default on every run for this instance of the Run Engine:
In [20]:
token = RE.subscribe('event', print_event_time)
token
Out[20]:
1
The output token
, an integer, can be use to unsubscribe later.
In [21]:
RE.unsubscribe(token)
In [22]:
%matplotlib notebook
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
In [23]:
def stepscan(motor, detector):
for i in range(-5, 5):
yield Msg('create')
yield Msg('set', motor, {'pos': i})
yield Msg('trigger', motor)
yield Msg('trigger', det)
yield Msg('read', motor)
yield Msg('read', detector)
yield Msg('save')
def live_scalar_plotter(ax, y, x):
x_data, y_data = [], []
line, = ax.plot([], [], 'ro', markersize=10)
def update_plot(doc):
# Update with the latest data.
x_data.append(doc['data'][x]['value'])
y_data.append(doc['data'][y]['value'])
line.set_data(x_data, y_data)
# Rescale and redraw.
ax.relim(visible_only=True)
ax.autoscale_view(tight=True)
ax.figure.canvas.draw()
return update_plot
# Point the function to our axes above, and specify what to plot.
my_plotter = live_scalar_plotter(ax, 'det', 'pos')
RE.run(stepscan(motor, det), subscriptions={'event': my_plotter})
*** Emitted RunStart:
{'uid': '1bcd8b51-21ae-4c80-ad5b-8f1cd895ff8d', 'beamline_id': 'test', 'scan_id': 123, 'owner': 'tester', 'time': 1433039541.4556851}
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': -5},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
trigger: (reader: sg), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'timestamp': 1433039541.5864153, 'value': -5}}
MSG_CACHE None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433039541.596735, 'value': 3.7266531720786709e-06}}
MSG_CACHE None
*** Emitted Event Descriptor:
{'run_start': '1bcd8b51-21ae-4c80-ad5b-8f1cd895ff8d', 'uid': '1eb1f096-d2e6-4bd4-86ab-a3fa35a8137b', 'time': 1433039541.627659, 'data_keys': {'pos': {'source': 'motor', 'dtype': 'number'}, 'I': {'source': 'det', 'dtype': 'number'}}}
*** Emitted Event:
{'descriptor': '1eb1f096-d2e6-4bd4-86ab-a3fa35a8137b', 'uid': '7bcd16b5-e885-44c2-9059-b2bd63d03c2c', 'seq_num': 1, 'time': 1433039541.6279492, 'data': {'pos': {'timestamp': 1433039541.5864153, 'value': -5}, 'det': {'timestamp': 1433039541.596735, 'value': 3.726653172078671e-06}}}
save: (None), (), {}
ret: None
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': -4},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
trigger: (reader: sg), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'timestamp': 1433039541.7587812, 'value': -4}}
MSG_CACHE None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433039541.7690506, 'value': 0.00033546262790251185}}
MSG_CACHE None
*** Emitted Event:
{'descriptor': '1eb1f096-d2e6-4bd4-86ab-a3fa35a8137b', 'uid': '487de680-ff29-490b-8385-f80eac830e3e', 'seq_num': 2, 'time': 1433039541.8007095, 'data': {'pos': {'timestamp': 1433039541.7587812, 'value': -4}, 'det': {'timestamp': 1433039541.7690506, 'value': 0.00033546262790251185}}}
save: (None), (), {}
ret: None
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': -3},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
trigger: (reader: sg), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'timestamp': 1433039541.9313443, 'value': -3}}
MSG_CACHE None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433039541.9416196, 'value': 0.011108996538242306}}
MSG_CACHE None
*** Emitted Event:
{'descriptor': '1eb1f096-d2e6-4bd4-86ab-a3fa35a8137b', 'uid': '7d79cd1b-5ed3-4cca-838d-393d11fbda2f', 'seq_num': 3, 'time': 1433039541.9722161, 'data': {'pos': {'timestamp': 1433039541.9313443, 'value': -3}, 'det': {'timestamp': 1433039541.9416196, 'value': 0.011108996538242306}}}
save: (None), (), {}
ret: None
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': -2},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
trigger: (reader: sg), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'timestamp': 1433039542.1158118, 'value': -2}}
MSG_CACHE None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433039542.1260862, 'value': 0.1353352832366127}}
MSG_CACHE None
*** Emitted Event:
{'descriptor': '1eb1f096-d2e6-4bd4-86ab-a3fa35a8137b', 'uid': 'bf21a332-2df5-4a7a-baac-78e0b2fad421', 'seq_num': 4, 'time': 1433039542.1569147, 'data': {'pos': {'timestamp': 1433039542.1158118, 'value': -2}, 'det': {'timestamp': 1433039542.1260862, 'value': 0.1353352832366127}}}
save: (None), (), {}
ret: None
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': -1},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
trigger: (reader: sg), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'timestamp': 1433039542.3093874, 'value': -1}}
MSG_CACHE None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433039542.3196592, 'value': 0.60653065971263342}}
MSG_CACHE None
*** Emitted Event:
{'descriptor': '1eb1f096-d2e6-4bd4-86ab-a3fa35a8137b', 'uid': 'f0b1da2c-2337-4d3f-8ed2-9bca102885f6', 'seq_num': 5, 'time': 1433039542.3503654, 'data': {'pos': {'timestamp': 1433039542.3093874, 'value': -1}, 'det': {'timestamp': 1433039542.3196592, 'value': 0.6065306597126334}}}
save: (None), (), {}
ret: None
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': 0},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
trigger: (reader: sg), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'timestamp': 1433039542.5042408, 'value': 0}}
MSG_CACHE None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433039542.51452, 'value': 1.0}}
MSG_CACHE None
*** Emitted Event:
{'descriptor': '1eb1f096-d2e6-4bd4-86ab-a3fa35a8137b', 'uid': 'c4e183d9-a194-461e-b418-a61b302b317d', 'seq_num': 6, 'time': 1433039542.545132, 'data': {'pos': {'timestamp': 1433039542.5042408, 'value': 0}, 'det': {'timestamp': 1433039542.51452, 'value': 1.0}}}
save: (None), (), {}
ret: None
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': 1},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
trigger: (reader: sg), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'timestamp': 1433039542.6950617, 'value': 1}}
MSG_CACHE None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433039542.705322, 'value': 0.60653065971263342}}
MSG_CACHE None
*** Emitted Event:
{'descriptor': '1eb1f096-d2e6-4bd4-86ab-a3fa35a8137b', 'uid': 'd114ee77-15e6-43be-9166-745d5d427785', 'seq_num': 7, 'time': 1433039542.7359445, 'data': {'pos': {'timestamp': 1433039542.6950617, 'value': 1}, 'det': {'timestamp': 1433039542.705322, 'value': 0.6065306597126334}}}
save: (None), (), {}
ret: None
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': 2},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
trigger: (reader: sg), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'timestamp': 1433039542.886333, 'value': 2}}
MSG_CACHE None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433039542.8965862, 'value': 0.1353352832366127}}
MSG_CACHE None
*** Emitted Event:
{'descriptor': '1eb1f096-d2e6-4bd4-86ab-a3fa35a8137b', 'uid': '997dcc7d-1061-437a-a655-7cdac42ed4ad', 'seq_num': 8, 'time': 1433039542.9272115, 'data': {'pos': {'timestamp': 1433039542.886333, 'value': 2}, 'det': {'timestamp': 1433039542.8965862, 'value': 0.1353352832366127}}}
save: (None), (), {}
ret: None
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': 3},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
trigger: (reader: sg), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'timestamp': 1433039543.077164, 'value': 3}}
MSG_CACHE None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433039543.0874474, 'value': 0.011108996538242306}}
MSG_CACHE None
*** Emitted Event:
{'descriptor': '1eb1f096-d2e6-4bd4-86ab-a3fa35a8137b', 'uid': 'da2c828e-53ad-4593-92ec-3143c3ce4468', 'seq_num': 9, 'time': 1433039543.1181424, 'data': {'pos': {'timestamp': 1433039543.077164, 'value': 3}, 'det': {'timestamp': 1433039543.0874474, 'value': 0.011108996538242306}}}
save: (None), (), {}
ret: None
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': 4},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
trigger: (reader: sg), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'timestamp': 1433039543.2693634, 'value': 4}}
MSG_CACHE None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433039543.27964, 'value': 0.00033546262790251185}}
MSG_CACHE None
*** Emitted Event:
{'descriptor': '1eb1f096-d2e6-4bd4-86ab-a3fa35a8137b', 'uid': '42f7db2e-cee7-46d5-9b72-0d609635f1df', 'seq_num': 10, 'time': 1433039543.3103335, 'data': {'pos': {'timestamp': 1433039543.2693634, 'value': 4}, 'det': {'timestamp': 1433039543.27964, 'value': 0.00033546262790251185}}}
save: (None), (), {}
ret: None
MSG_CACHE None
*** Emitted RunStop:
{'run_start': '1bcd8b51-21ae-4c80-ad5b-8f1cd895ff8d', 'reason': '', 'exit_status': 'success', 'time': 1433039543.3205254}
Mission-critical consumers can be run on the scan thread, where they will block the scan until they return from processing the emitted Documents. This should not be used for computationally heavy tasks like visualization. Its only intended use is for saving data to metadatastore, but users can register any consumers they want, at risk of slowing down the scan.
RE._register_scan_callback('event', some_critical_func)
The convenience function register_mds
registers metadatastore's four insert_*
functions to consume their four respective Documents. These are registered on the scan thread, so data is guaranteed to be saved in metadatastore.
In [20]:
%run register_mds.py
register_mds(RE)
We can verify that this worked by loading this one-point scan from the DataBroker and displaying the data using DataMuxer.
In [25]:
RE.run(simple_scan_saving(motor, det))
*** Emitted RunStart:
{'uid': 'd50c62b5-1127-4174-b4b9-8c022b73fa5a', 'beamline_id': 'test', 'scan_id': 123, 'owner': 'tester', 'time': 1433039543.7722633}
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': 5},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'timestamp': 1433039543.9101195, 'value': 5}}
MSG_CACHE None
read: (reader: sg), (), {}
ret: {'det': {'timestamp': 1433039543.27964, 'value': 0.00033546262790251185}}
MSG_CACHE None
*** Emitted Event Descriptor:
{'run_start': 'd50c62b5-1127-4174-b4b9-8c022b73fa5a', 'uid': 'b1f40a88-d736-4eab-a23e-95fc8f21ceac', 'time': 1433039543.9409378, 'data_keys': {'pos': {'source': 'motor', 'dtype': 'number'}, 'I': {'source': 'det', 'dtype': 'number'}}}
*** Emitted Event:
{'descriptor': 'b1f40a88-d736-4eab-a23e-95fc8f21ceac', 'uid': '22e73259-60bf-4a20-8d27-1f18c4211075', 'seq_num': 1, 'time': 1433039543.9432592, 'data': {'pos': {'timestamp': 1433039543.9101195, 'value': 5}, 'det': {'timestamp': 1433039543.27964, 'value': 0.00033546262790251185}}}
save: (None), (), {}
ret: None
MSG_CACHE None
*** Emitted RunStop:
{'run_start': 'd50c62b5-1127-4174-b4b9-8c022b73fa5a', 'reason': '', 'exit_status': 'success', 'time': 1433039543.955212}
In [26]:
from dataportal import DataBroker as db
header = db[-1]
header
Out[26]:
beamline_config config_params
time 1433039543.7723243 time_as_datetime 2015-05-30 22:32:23.772324 (now) uid 33cfe9be-8f75-4ff5-b428-3b730d04b23b
beamline_id test event_descriptors data_keys I dtype number external None shape
source sg
pos dtype number external None shape
source motor
run_start d50c62b5-1127-4174-b4b9-8c022b73fa5a time 1433039543.9409378 time_as_datetime 2015-05-30 22:32:23.940937 (now) uid b1f40a88-d736-4eab-a23e-95fc8f21ceac
exit_reason exit_status success group owner tester project run_start_uid d50c62b5-1127-4174-b4b9-8c022b73fa5a run_stop_uid 8c831180-5e1c-4884-a319-ad85b80a9102 sample
scan_id 123 start_datetime 2015-05-30 22:32:23.772263 (now) start_time 1433039543.7722633 stop_datetime 2015-05-30 22:32:23.955212 (now) stop_time 1433039543.955212
In [27]:
from dataportal import DataMuxer as dm
dm.from_events(db.fetch_events(header)).to_sparse_dataframe()
Out[27]:
intensity
pos
time
0
0.000335
5
1.433040e+09
Asserts that flyscans are managed by an object which has three methods:
- describe : same as for everything else
- kickoff : method which starts the flyscan. This should be a fast-to-
execute function that is assumed to just poke at some external
hardware.
- collect : collects the data from flyscan. This method yields partial
event documents. The 'time' and 'data' fields should be
filled in, the rest will be filled in by the run engine.
In [21]:
flyer = FlyMagic('flyer', 'theta', 'sin')
In [22]:
def fly_scan(flyer):
yield Msg('kickoff', flyer)
yield Msg('collect', flyer)
yield Msg('kickoff', flyer)
yield Msg('collect', flyer)
# Note that there is no 'create'/'save' here. That is managed by 'collect'.
RE.run(fly_gen(flyer), use_threading=False)
*** Emitted RunStart:
{'time': 1433074217.910113, 'uid': 'b3bb171d-2be6-4ca8-9552-11de7161ffa5', 'owner': 'tester', 'scan_id': 123, 'beamline_id': 'test'}
MSG_CACHE None
kickoff: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
Emitted Event Descriptor:
{'uid': '7e929477-0150-4d36-a125-d48886b8262a', 'data_keys': {'sin': {'dtype': 'number', 'source': 'flyer'}, 'theta': {'dtype': 'number', 'source': 'flyer'}}, 'time': 1433074217.960202, 'run_start': 'b3bb171d-2be6-4ca8-9552-11de7161ffa5'}
Emitted Event:
{'time': 1433074217.9497859, 'uid': 'c53082e1-fe69-4462-b68d-fca77c415342', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 1, 'data': {'sin': {'value': 0.3090169943749474, 'timestamp': 1433074217.9497859}, 'theta': {'value': 0.0, 'timestamp': 1433074217.9497859}}}
Emitted Event:
{'time': 1433074217.9509051, 'uid': 'd865bf65-8341-4beb-8337-87401fbf3193', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 2, 'data': {'sin': {'value': 0.6910626489868646, 'timestamp': 1433074217.9509051}, 'theta': {'value': 0.4487989505128276, 'timestamp': 1433074217.9509051}}}
Emitted Event:
{'time': 1433074217.9520245, 'uid': '94d42401-11e7-459a-8921-941de66ac55f', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 3, 'data': {'sin': {'value': 0.9362348706397372, 'timestamp': 1433074217.9520245}, 'theta': {'value': 0.8975979010256552, 'timestamp': 1433074217.9520245}}}
Emitted Event:
{'time': 1433074217.9531436, 'uid': 'f1c83ed1-c2ec-401e-bfcb-a62d913e53ed', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 4, 'data': {'sin': {'value': 0.9959742939952391, 'timestamp': 1433074217.9531436}, 'theta': {'value': 1.3463968515384828, 'timestamp': 1433074217.9531436}}}
Emitted Event:
{'time': 1433074217.9542627, 'uid': 'df840fba-4494-4243-b93d-de2cfd2b047d', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 5, 'data': {'sin': {'value': 0.8584487936018662, 'timestamp': 1433074217.9542627}, 'theta': {'value': 1.7951958020513104, 'timestamp': 1433074217.9542627}}}
Emitted Event:
{'time': 1433074217.9553819, 'uid': 'd470eb78-6954-4e6b-9d01-c403826f0830', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 6, 'data': {'sin': {'value': 0.5508969814521026, 'timestamp': 1433074217.9553819}, 'theta': {'value': 2.243994752564138, 'timestamp': 1433074217.9553819}}}
Emitted Event:
{'time': 1433074217.9565012, 'uid': 'ca66e595-8630-4550-a81c-bba856a19f5a', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 7, 'data': {'sin': {'value': 0.13423326581765557, 'timestamp': 1433074217.9565012}, 'theta': {'value': 2.6927937030769655, 'timestamp': 1433074217.9565012}}}
Emitted Event:
{'time': 1433074217.9576204, 'uid': 'f0716ca4-20c0-49b5-b193-ad438640e583', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 8, 'data': {'sin': {'value': -0.3090169943749473, 'timestamp': 1433074217.9576204}, 'theta': {'value': 3.141592653589793, 'timestamp': 1433074217.9576204}}}
Emitted Event:
{'time': 1433074217.9587395, 'uid': '4dacecd7-9ce0-4abf-9975-dcd18e1ec03e', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 9, 'data': {'sin': {'value': -0.6910626489868645, 'timestamp': 1433074217.9587395}, 'theta': {'value': 3.5903916041026207, 'timestamp': 1433074217.9587395}}}
Emitted Event:
{'time': 1433074217.9598587, 'uid': 'e89e1399-1046-4280-8891-36917c19cc91', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 10, 'data': {'sin': {'value': -0.9362348706397372, 'timestamp': 1433074217.9598587}, 'theta': {'value': 4.039190554615448, 'timestamp': 1433074217.9598587}}}
Emitted Event:
{'time': 1433074217.960978, 'uid': '654081bf-e0c2-4231-ad15-a93699e53764', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 11, 'data': {'sin': {'value': -0.9959742939952391, 'timestamp': 1433074217.960978}, 'theta': {'value': 4.487989505128276, 'timestamp': 1433074217.960978}}}
Emitted Event:
{'time': 1433074217.9620972, 'uid': '3bfef05d-f83c-45f6-9d90-59a13dfb3ec0', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 12, 'data': {'sin': {'value': -0.8584487936018662, 'timestamp': 1433074217.9620972}, 'theta': {'value': 4.9367884556411035, 'timestamp': 1433074217.9620972}}}
Emitted Event:
{'time': 1433074217.9632163, 'uid': '392ee7e3-3138-4a93-8dd2-c3a2130b49eb', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 13, 'data': {'sin': {'value': -0.5508969814521026, 'timestamp': 1433074217.9632163}, 'theta': {'value': 5.385587406153931, 'timestamp': 1433074217.9632163}}}
Emitted Event:
{'time': 1433074217.9643354, 'uid': '88129e9e-bbf8-4e97-913e-2e2a16e369b8', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 14, 'data': {'sin': {'value': -0.1342332658176557, 'timestamp': 1433074217.9643354}, 'theta': {'value': 5.834386356666759, 'timestamp': 1433074217.9643354}}}
Emitted Event:
{'time': 1433074217.9654548, 'uid': '4fe193a8-1582-43f7-8b08-f994e87e4f68', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 15, 'data': {'sin': {'value': 0.3090169943749472, 'timestamp': 1433074217.9654548}, 'theta': {'value': 6.283185307179586, 'timestamp': 1433074217.9654548}}}
collect: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
kickoff: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
Emitted Event:
{'time': 1433074218.020009, 'uid': '96bcb72b-fe74-4bd3-b86b-3383f85753da', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 16, 'data': {'sin': {'value': 0.5877852522924731, 'timestamp': 1433074218.020009}, 'theta': {'value': 0.0, 'timestamp': 1433074218.020009}}}
Emitted Event:
{'time': 1433074218.0207903, 'uid': '1a467f5e-b152-4fd5-9ea4-5c28c3109eed', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 17, 'data': {'sin': {'value': 0.880595531856738, 'timestamp': 1433074218.0207903}, 'theta': {'value': 0.4487989505128276, 'timestamp': 1433074218.0207903}}}
Emitted Event:
{'time': 1433074218.0215716, 'uid': '8829adb8-eba3-4ebf-951d-f81e94fc2d20', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 18, 'data': {'sin': {'value': 0.9989930665413146, 'timestamp': 1433074218.0215716}, 'theta': {'value': 0.8975979010256552, 'timestamp': 1433074218.0215716}}}
Emitted Event:
{'time': 1433074218.0223529, 'uid': 'f91b9a2e-6f1c-4a27-839a-757611d16619', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 19, 'data': {'sin': {'value': 0.9195277725514507, 'timestamp': 1433074218.0223529}, 'theta': {'value': 1.3463968515384828, 'timestamp': 1433074218.0223529}}}
Emitted Event:
{'time': 1433074218.0231345, 'uid': '82724927-164b-4489-a0da-c0d35f4ab97c', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 20, 'data': {'sin': {'value': 0.6579387259397127, 'timestamp': 1433074218.0231345}, 'theta': {'value': 1.7951958020513104, 'timestamp': 1433074218.0231345}}}
Emitted Event:
{'time': 1433074218.0239158, 'uid': 'ae35bbb6-0816-4d92-a7aa-6a09a1c12a32', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 21, 'data': {'sin': {'value': 0.26603684556667523, 'timestamp': 1433074218.0239158}, 'theta': {'value': 2.243994752564138, 'timestamp': 1433074218.0239158}}}
Emitted Event:
{'time': 1433074218.0246971, 'uid': '14985a8a-6877-421a-bed5-aadfcaa11b65', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 22, 'data': {'sin': {'value': -0.17855689479863654, 'timestamp': 1433074218.0246971}, 'theta': {'value': 2.6927937030769655, 'timestamp': 1433074218.0246971}}}
Emitted Event:
{'time': 1433074218.0254784, 'uid': 'e468cfd6-b480-460d-b05f-dc40960981ae', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 23, 'data': {'sin': {'value': -0.587785252292473, 'timestamp': 1433074218.0254784}, 'theta': {'value': 3.141592653589793, 'timestamp': 1433074218.0254784}}}
Emitted Event:
{'time': 1433074218.0262597, 'uid': '2f313cb0-990a-4dda-b52d-1d1281434fa2', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 24, 'data': {'sin': {'value': -0.8805955318567379, 'timestamp': 1433074218.0262597}, 'theta': {'value': 3.5903916041026207, 'timestamp': 1433074218.0262597}}}
Emitted Event:
{'time': 1433074218.027041, 'uid': '8b8d1634-4532-4700-bf20-2cb1cc48e671', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 25, 'data': {'sin': {'value': -0.9989930665413146, 'timestamp': 1433074218.027041}, 'theta': {'value': 4.039190554615448, 'timestamp': 1433074218.027041}}}
Emitted Event:
{'time': 1433074218.0278223, 'uid': 'b168d41d-e2a2-402d-a4fa-910dc69077d4', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 26, 'data': {'sin': {'value': -0.9195277725514507, 'timestamp': 1433074218.0278223}, 'theta': {'value': 4.487989505128276, 'timestamp': 1433074218.0278223}}}
Emitted Event:
{'time': 1433074218.0286036, 'uid': '161f378c-a58a-405f-8f4c-2367ac21b350', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 27, 'data': {'sin': {'value': -0.6579387259397128, 'timestamp': 1433074218.0286036}, 'theta': {'value': 4.9367884556411035, 'timestamp': 1433074218.0286036}}}
Emitted Event:
{'time': 1433074218.0293851, 'uid': 'ad931b58-4ca0-4741-8cc3-493261e1262f', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 28, 'data': {'sin': {'value': -0.2660368455666753, 'timestamp': 1433074218.0293851}, 'theta': {'value': 5.385587406153931, 'timestamp': 1433074218.0293851}}}
Emitted Event:
{'time': 1433074218.0301664, 'uid': '17320064-d5d7-4d6f-a31d-edb71d9b243b', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 29, 'data': {'sin': {'value': 0.1785568947986364, 'timestamp': 1433074218.0301664}, 'theta': {'value': 5.834386356666759, 'timestamp': 1433074218.0301664}}}
Emitted Event:
{'time': 1433074218.0309477, 'uid': 'bd517faa-7685-4999-b712-7465bd1f0f1f', 'descriptor': '7e929477-0150-4d36-a125-d48886b8262a', 'seq_num': 30, 'data': {'sin': {'value': 0.5877852522924729, 'timestamp': 1433074218.0309477}, 'theta': {'value': 6.283185307179586, 'timestamp': 1433074218.0309477}}}
collect: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
*** Emitted RunStop:
{'time': 1433074218.085244, 'run_start': 'b3bb171d-2be6-4ca8-9552-11de7161ffa5', 'exit_status': 'success', 'reason': ''}
The fly scan results are in metadatastore....
In [23]:
header = db[-1]
header
Out[23]:
beamline_config config_params
time 1433074217.910222 time_as_datetime 2015-05-31 08:10:17.910222 (4 seconds ago) uid 06f45d15-58e0-4187-9361-9a77c0da24a2
beamline_id test event_descriptors data_keys sin dtype number external None shape
source flyer
theta dtype number external None shape
source flyer
run_start b3bb171d-2be6-4ca8-9552-11de7161ffa5 time 1433074217.960202 time_as_datetime 2015-05-31 08:10:17.960201 (4 seconds ago) uid 7e929477-0150-4d36-a125-d48886b8262a
exit_reason exit_status success group owner tester project run_start_uid b3bb171d-2be6-4ca8-9552-11de7161ffa5 run_stop_uid 4e070219-18ca-46cf-a2dd-4eec246766ab sample
scan_id 123 start_datetime 2015-05-31 08:10:17.910113 (4 seconds ago) start_time 1433074217.910113 stop_datetime 2015-05-31 08:10:18.085243 (4 seconds ago) stop_time 1433074218.085244
In [24]:
res = dm.from_events(db.fetch_events(header)).to_sparse_dataframe()
res
Out[24]:
sin
theta
time
0
0.309017
0.000000
2015-05-31 12:10:17.949786
1
0.691063
0.448799
2015-05-31 12:10:17.950905
2
0.936235
0.897598
2015-05-31 12:10:17.952024
3
0.995974
1.346397
2015-05-31 12:10:17.953144
4
0.858449
1.795196
2015-05-31 12:10:17.954263
5
0.550897
2.243995
2015-05-31 12:10:17.955382
6
0.134233
2.692794
2015-05-31 12:10:17.956501
7
-0.309017
3.141593
2015-05-31 12:10:17.957620
8
-0.691063
3.590392
2015-05-31 12:10:17.958740
9
-0.936235
4.039191
2015-05-31 12:10:17.959859
10
-0.995974
4.487990
2015-05-31 12:10:17.960978
11
-0.858449
4.936788
2015-05-31 12:10:17.962097
12
-0.550897
5.385587
2015-05-31 12:10:17.963216
13
-0.134233
5.834386
2015-05-31 12:10:17.964335
14
0.309017
6.283185
2015-05-31 12:10:17.965455
15
0.587785
0.000000
2015-05-31 12:10:18.020009
16
0.880596
0.448799
2015-05-31 12:10:18.020790
17
0.998993
0.897598
2015-05-31 12:10:18.021572
18
0.919528
1.346397
2015-05-31 12:10:18.022353
19
0.657939
1.795196
2015-05-31 12:10:18.023134
20
0.266037
2.243995
2015-05-31 12:10:18.023916
21
-0.178557
2.692794
2015-05-31 12:10:18.024697
22
-0.587785
3.141593
2015-05-31 12:10:18.025478
23
-0.880596
3.590392
2015-05-31 12:10:18.026260
24
-0.998993
4.039191
2015-05-31 12:10:18.027041
25
-0.919528
4.487990
2015-05-31 12:10:18.027822
26
-0.657939
4.936788
2015-05-31 12:10:18.028604
27
-0.266037
5.385587
2015-05-31 12:10:18.029385
28
0.178557
5.834386
2015-05-31 12:10:18.030166
29
0.587785
6.283185
2015-05-31 12:10:18.030948
In [25]:
fig, ax = plt.subplots()
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-25-c49ba9de65d3> in <module>()
----> 1 fig, ax = plt.subplots()
NameError: name 'plt' is not defined
In [33]:
ax.cla()
res = dm.from_events(db.fetch_events(header)).to_sparse_dataframe()
ax.plot(res['sin'], label='sin')
ax.plot(res['theta'], label='theta')
ax.legend()
fig.canvas.draw()
In [33]:
def fly_step(flyer, motor):
for x in range(-5, 5):
# step
yield Msg('create')
yield Msg('set', motor, {'pos': x})
yield Msg('trigger', motor)
yield Msg('read', motor)
yield Msg('save')
# fly
yield Msg('kickoff', flyer)
yield Msg('collect', flyer)
In [34]:
flyer.reset()
RE.run(fly_step(flyer, motor))
*** Emitted RunStart:
{'time': 1433074300.259759, 'uid': '86012b98-c6f5-4f2c-8f4d-3dfd427232ce', 'owner': 'tester', 'scan_id': 123, 'beamline_id': 'test'}
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': -5},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'value': -5, 'timestamp': 1433074300.3996}}
MSG_CACHE None
*** Emitted Event Descriptor:
{'uid': '885b1e6f-b8d9-45c8-99bf-5bae20b5897b', 'data_keys': {'pos': {'dtype': 'number', 'source': 'motor'}}, 'time': 1433074300.425076, 'run_start': '86012b98-c6f5-4f2c-8f4d-3dfd427232ce'}
*** Emitted Event:
{'uid': '4691a1a3-2727-4909-b4c1-bca8b31da558', 'time': 1433074300.429001, 'descriptor': '885b1e6f-b8d9-45c8-99bf-5bae20b5897b', 'seq_num': 1, 'data': {'pos': {'value': -5, 'timestamp': 1433074300.3996}}}
save: (None), (), {}
ret: None
MSG_CACHE None
kickoff: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
Emitted Event Descriptor:
{'uid': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'data_keys': {'sin': {'dtype': 'number', 'source': 'flyer'}, 'theta': {'dtype': 'number', 'source': 'flyer'}}, 'time': 1433074300.456389, 'run_start': '86012b98-c6f5-4f2c-8f4d-3dfd427232ce'}
Emitted Event:
{'time': 1433074300.4448991, 'uid': '7e13deee-4690-44aa-ba97-0479d584e6bf', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 1, 'data': {'sin': {'value': 0.3090169943749474, 'timestamp': 1433074300.4448991}, 'theta': {'value': 0.0, 'timestamp': 1433074300.4448991}}}
Emitted Event:
{'time': 1433074300.4459479, 'uid': '0f8a27b8-21de-4f3a-8857-5d10779a2382', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 2, 'data': {'sin': {'value': 0.6910626489868646, 'timestamp': 1433074300.4459479}, 'theta': {'value': 0.4487989505128276, 'timestamp': 1433074300.4459479}}}
Emitted Event:
{'time': 1433074300.4469965, 'uid': 'ba2bc1a8-7950-4a28-9a8c-c188ea18c91e', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 3, 'data': {'sin': {'value': 0.9362348706397372, 'timestamp': 1433074300.4469965}, 'theta': {'value': 0.8975979010256552, 'timestamp': 1433074300.4469965}}}
Emitted Event:
{'time': 1433074300.4480453, 'uid': '037c845d-c646-4e7f-8eee-a6b681582611', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 4, 'data': {'sin': {'value': 0.9959742939952391, 'timestamp': 1433074300.4480453}, 'theta': {'value': 1.3463968515384828, 'timestamp': 1433074300.4480453}}}
Emitted Event:
{'time': 1433074300.4490941, 'uid': 'df65aed1-a6de-4f60-9736-9d7af48ddb8a', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 5, 'data': {'sin': {'value': 0.8584487936018662, 'timestamp': 1433074300.4490941}, 'theta': {'value': 1.7951958020513104, 'timestamp': 1433074300.4490941}}}
Emitted Event:
{'time': 1433074300.4501426, 'uid': '19ffba19-5ae4-4324-a5d2-80a004ba9e76', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 6, 'data': {'sin': {'value': 0.5508969814521026, 'timestamp': 1433074300.4501426}, 'theta': {'value': 2.243994752564138, 'timestamp': 1433074300.4501426}}}
Emitted Event:
{'time': 1433074300.4511914, 'uid': 'cd81edbe-39f6-44f4-aec4-a73583835044', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 7, 'data': {'sin': {'value': 0.13423326581765557, 'timestamp': 1433074300.4511914}, 'theta': {'value': 2.6927937030769655, 'timestamp': 1433074300.4511914}}}
Emitted Event:
{'time': 1433074300.4522402, 'uid': '8b0ee1e2-330b-48bb-9e8f-781b420288b4', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 8, 'data': {'sin': {'value': -0.3090169943749473, 'timestamp': 1433074300.4522402}, 'theta': {'value': 3.141592653589793, 'timestamp': 1433074300.4522402}}}
Emitted Event:
{'time': 1433074300.4532888, 'uid': '48564867-6171-415e-90fa-15043b44df2d', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 9, 'data': {'sin': {'value': -0.6910626489868645, 'timestamp': 1433074300.4532888}, 'theta': {'value': 3.5903916041026207, 'timestamp': 1433074300.4532888}}}
Emitted Event:
{'time': 1433074300.4543376, 'uid': '56828754-4a22-4289-9b17-cc4baa5465ae', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 10, 'data': {'sin': {'value': -0.9362348706397372, 'timestamp': 1433074300.4543376}, 'theta': {'value': 4.039190554615448, 'timestamp': 1433074300.4543376}}}
Emitted Event:
{'time': 1433074300.4553864, 'uid': '0d32fb21-fbd6-495d-92df-19528754d4b2', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 11, 'data': {'sin': {'value': -0.9959742939952391, 'timestamp': 1433074300.4553864}, 'theta': {'value': 4.487989505128276, 'timestamp': 1433074300.4553864}}}
Emitted Event:
{'time': 1433074300.456435, 'uid': 'e10ad063-4f37-45f4-bc00-e869aaf684f6', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 12, 'data': {'sin': {'value': -0.8584487936018662, 'timestamp': 1433074300.456435}, 'theta': {'value': 4.9367884556411035, 'timestamp': 1433074300.456435}}}
Emitted Event:
{'time': 1433074300.4574838, 'uid': '83c5c866-63c7-4bd8-ba52-f52f594a4abf', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 13, 'data': {'sin': {'value': -0.5508969814521026, 'timestamp': 1433074300.4574838}, 'theta': {'value': 5.385587406153931, 'timestamp': 1433074300.4574838}}}
Emitted Event:
{'time': 1433074300.4585326, 'uid': 'a40094dc-3638-4438-b39c-3f30f4c6f8ca', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 14, 'data': {'sin': {'value': -0.1342332658176557, 'timestamp': 1433074300.4585326}, 'theta': {'value': 5.834386356666759, 'timestamp': 1433074300.4585326}}}
Emitted Event:
{'time': 1433074300.4595811, 'uid': '54ccb7c7-87a4-4d74-8947-f30efe4eec2f', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 15, 'data': {'sin': {'value': 0.3090169943749472, 'timestamp': 1433074300.4595811}, 'theta': {'value': 6.283185307179586, 'timestamp': 1433074300.4595811}}}
collect: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': -4},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'value': -4, 'timestamp': 1433074300.63424}}
MSG_CACHE None
*** Emitted Event:
{'uid': 'cc76a986-d3c2-4284-bad6-c208cabbeb60', 'time': 1433074300.659869, 'descriptor': '885b1e6f-b8d9-45c8-99bf-5bae20b5897b', 'seq_num': 2, 'data': {'pos': {'value': -4, 'timestamp': 1433074300.63424}}}
save: (None), (), {}
ret: None
MSG_CACHE None
kickoff: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
Emitted Event:
{'time': 1433074300.675251, 'uid': '41b0d9fe-0567-41a8-9267-437532d9514c', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 16, 'data': {'sin': {'value': 0.5877852522924731, 'timestamp': 1433074300.675251}, 'theta': {'value': 0.0, 'timestamp': 1433074300.675251}}}
Emitted Event:
{'time': 1433074300.6760914, 'uid': '565807d8-b4e5-466d-bae3-8df27dc55934', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 17, 'data': {'sin': {'value': 0.880595531856738, 'timestamp': 1433074300.6760914}, 'theta': {'value': 0.4487989505128276, 'timestamp': 1433074300.6760914}}}
Emitted Event:
{'time': 1433074300.6769321, 'uid': 'a668cd22-7256-4e69-8709-0f70008ac6b5', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 18, 'data': {'sin': {'value': 0.9989930665413146, 'timestamp': 1433074300.6769321}, 'theta': {'value': 0.8975979010256552, 'timestamp': 1433074300.6769321}}}
Emitted Event:
{'time': 1433074300.6777725, 'uid': '080f2b01-cac7-4ac1-bcd6-6c4e94592236', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 19, 'data': {'sin': {'value': 0.9195277725514507, 'timestamp': 1433074300.6777725}, 'theta': {'value': 1.3463968515384828, 'timestamp': 1433074300.6777725}}}
Emitted Event:
{'time': 1433074300.6786132, 'uid': 'b55bed66-01d4-4e81-9838-d48d8398e711', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 20, 'data': {'sin': {'value': 0.6579387259397127, 'timestamp': 1433074300.6786132}, 'theta': {'value': 1.7951958020513104, 'timestamp': 1433074300.6786132}}}
Emitted Event:
{'time': 1433074300.6794536, 'uid': 'b4967be0-24bc-4af2-a112-73cfeaa155ec', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 21, 'data': {'sin': {'value': 0.26603684556667523, 'timestamp': 1433074300.6794536}, 'theta': {'value': 2.243994752564138, 'timestamp': 1433074300.6794536}}}
Emitted Event:
{'time': 1433074300.6802943, 'uid': '3d93ae6b-9ac0-4977-aa50-cc9d3e2d2300', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 22, 'data': {'sin': {'value': -0.17855689479863654, 'timestamp': 1433074300.6802943}, 'theta': {'value': 2.6927937030769655, 'timestamp': 1433074300.6802943}}}
Emitted Event:
{'time': 1433074300.6811347, 'uid': '110c73c1-5ee8-405c-90b0-9b1556f3acbf', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 23, 'data': {'sin': {'value': -0.587785252292473, 'timestamp': 1433074300.6811347}, 'theta': {'value': 3.141592653589793, 'timestamp': 1433074300.6811347}}}
Emitted Event:
{'time': 1433074300.6819754, 'uid': '947e8353-f022-44e6-a188-9f019ec140bc', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 24, 'data': {'sin': {'value': -0.8805955318567379, 'timestamp': 1433074300.6819754}, 'theta': {'value': 3.5903916041026207, 'timestamp': 1433074300.6819754}}}
Emitted Event:
{'time': 1433074300.6828158, 'uid': 'c920b37e-edeb-4b5b-bb4c-df753f24681d', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 25, 'data': {'sin': {'value': -0.9989930665413146, 'timestamp': 1433074300.6828158}, 'theta': {'value': 4.039190554615448, 'timestamp': 1433074300.6828158}}}
Emitted Event:
{'time': 1433074300.6836565, 'uid': '49c67104-a412-4058-aab9-2b9e927f3352', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 26, 'data': {'sin': {'value': -0.9195277725514507, 'timestamp': 1433074300.6836565}, 'theta': {'value': 4.487989505128276, 'timestamp': 1433074300.6836565}}}
Emitted Event:
{'time': 1433074300.6844969, 'uid': 'dd11bce1-e4ac-49b1-963e-813d60a2e028', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 27, 'data': {'sin': {'value': -0.6579387259397128, 'timestamp': 1433074300.6844969}, 'theta': {'value': 4.9367884556411035, 'timestamp': 1433074300.6844969}}}
Emitted Event:
{'time': 1433074300.6853375, 'uid': 'e55978e6-e39f-4ad9-a22a-4af23f91389e', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 28, 'data': {'sin': {'value': -0.2660368455666753, 'timestamp': 1433074300.6853375}, 'theta': {'value': 5.385587406153931, 'timestamp': 1433074300.6853375}}}
Emitted Event:
{'time': 1433074300.686178, 'uid': '63440fb2-ce01-45d7-ae82-42b960e48d2f', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 29, 'data': {'sin': {'value': 0.1785568947986364, 'timestamp': 1433074300.686178}, 'theta': {'value': 5.834386356666759, 'timestamp': 1433074300.686178}}}
Emitted Event:
{'time': 1433074300.6870186, 'uid': 'da427af6-5e2e-4b83-a3f9-6a66c4dc550e', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 30, 'data': {'sin': {'value': 0.5877852522924729, 'timestamp': 1433074300.6870186}, 'theta': {'value': 6.283185307179586, 'timestamp': 1433074300.6870186}}}
collect: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': -3},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'value': -3, 'timestamp': 1433074300.855163}}
MSG_CACHE None
*** Emitted Event:
{'uid': '99a607c4-cb4d-43c3-8838-6663b9a94096', 'time': 1433074300.881141, 'descriptor': '885b1e6f-b8d9-45c8-99bf-5bae20b5897b', 'seq_num': 3, 'data': {'pos': {'value': -3, 'timestamp': 1433074300.855163}}}
save: (None), (), {}
ret: None
MSG_CACHE None
kickoff: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
Emitted Event:
{'time': 1433074300.898983, 'uid': 'cff8335c-36f5-48ab-8f25-827771412b06', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 31, 'data': {'sin': {'value': 0.8090169943749473, 'timestamp': 1433074300.898983}, 'theta': {'value': 0.0, 'timestamp': 1433074300.898983}}}
Emitted Event:
{'time': 1433074300.8997362, 'uid': '82658a0e-9b5e-4813-830c-d5da846dd4af', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 32, 'data': {'sin': {'value': 0.9839295885986297, 'timestamp': 1433074300.8997362}, 'theta': {'value': 0.4487989505128276, 'timestamp': 1433074300.8997362}}}
Emitted Event:
{'time': 1433074300.9004893, 'uid': '7a95286e-0aa7-4ce9-a69f-444ccff45535', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 33, 'data': {'sin': {'value': 0.9639628606958534, 'timestamp': 1433074300.9004893}, 'theta': {'value': 0.8975979010256552, 'timestamp': 1433074300.9004893}}}
Emitted Event:
{'time': 1433074300.9012425, 'uid': '62f3fbf4-e916-4eff-99df-ee27b3ad03e7', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 34, 'data': {'sin': {'value': 0.753071466003611, 'timestamp': 1433074300.9012425}, 'theta': {'value': 1.3463968515384828, 'timestamp': 1433074300.9012425}}}
Emitted Event:
{'time': 1433074300.9019959, 'uid': '6b43bd12-88f3-4dde-b8a9-2cbe96d291e1', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 35, 'data': {'sin': {'value': 0.3930250316539237, 'timestamp': 1433074300.9019959}, 'theta': {'value': 1.7951958020513104, 'timestamp': 1433074300.9019959}}}
Emitted Event:
{'time': 1433074300.9027491, 'uid': '0c50dd9b-1aa2-485b-ae42-ac9daaec5c37', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 36, 'data': {'sin': {'value': -0.0448648303505148, 'timestamp': 1433074300.9027491}, 'theta': {'value': 2.243994752564138, 'timestamp': 1433074300.9027491}}}
Emitted Event:
{'time': 1433074300.9035022, 'uid': '0563a618-275e-4111-abb7-2a617d30962a', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 37, 'data': {'sin': {'value': -0.4738686624729986, 'timestamp': 1433074300.9035022}, 'theta': {'value': 2.6927937030769655, 'timestamp': 1433074300.9035022}}}
Emitted Event:
{'time': 1433074300.9042554, 'uid': '58e410e5-3476-436e-bef1-5fe6efb09760', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 38, 'data': {'sin': {'value': -0.8090169943749473, 'timestamp': 1433074300.9042554}, 'theta': {'value': 3.141592653589793, 'timestamp': 1433074300.9042554}}}
Emitted Event:
{'time': 1433074300.9050086, 'uid': '41312633-b8f7-44d6-a487-29c19b590f26', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 39, 'data': {'sin': {'value': -0.9839295885986297, 'timestamp': 1433074300.9050086}, 'theta': {'value': 3.5903916041026207, 'timestamp': 1433074300.9050086}}}
Emitted Event:
{'time': 1433074300.9057617, 'uid': '30fe36f3-a724-4db7-9590-0870649970ac', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 40, 'data': {'sin': {'value': -0.9639628606958534, 'timestamp': 1433074300.9057617}, 'theta': {'value': 4.039190554615448, 'timestamp': 1433074300.9057617}}}
Emitted Event:
{'time': 1433074300.9065149, 'uid': '478326f3-7293-4e2b-8482-5ce50d782bb5', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 41, 'data': {'sin': {'value': -0.7530714660036111, 'timestamp': 1433074300.9065149}, 'theta': {'value': 4.487989505128276, 'timestamp': 1433074300.9065149}}}
Emitted Event:
{'time': 1433074300.907268, 'uid': 'eafc76c3-279d-463f-9fb6-87d1e22b4240', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 42, 'data': {'sin': {'value': -0.39302503165392383, 'timestamp': 1433074300.907268}, 'theta': {'value': 4.9367884556411035, 'timestamp': 1433074300.907268}}}
Emitted Event:
{'time': 1433074300.9080215, 'uid': '46d9b15f-bd9d-434f-ab15-4d03cddbdaf5', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 43, 'data': {'sin': {'value': 0.04486483035051468, 'timestamp': 1433074300.9080215}, 'theta': {'value': 5.385587406153931, 'timestamp': 1433074300.9080215}}}
Emitted Event:
{'time': 1433074300.9087746, 'uid': 'c58da9a8-7f9d-418e-8198-a2a8cd5cfe5b', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 44, 'data': {'sin': {'value': 0.47386866247299847, 'timestamp': 1433074300.9087746}, 'theta': {'value': 5.834386356666759, 'timestamp': 1433074300.9087746}}}
Emitted Event:
{'time': 1433074300.9095278, 'uid': '41366ba2-3883-4066-aef5-50d0c846541b', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 45, 'data': {'sin': {'value': 0.8090169943749472, 'timestamp': 1433074300.9095278}, 'theta': {'value': 6.283185307179586, 'timestamp': 1433074300.9095278}}}
collect: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': -2},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'value': -2, 'timestamp': 1433074301.089182}}
MSG_CACHE None
*** Emitted Event:
{'uid': '76f967a7-b123-4032-849a-08c68d092cc6', 'time': 1433074301.111085, 'descriptor': '885b1e6f-b8d9-45c8-99bf-5bae20b5897b', 'seq_num': 4, 'data': {'pos': {'value': -2, 'timestamp': 1433074301.089182}}}
save: (None), (), {}
ret: None
MSG_CACHE None
kickoff: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
Emitted Event:
{'time': 1433074301.1267681, 'uid': 'e18eb59e-e9f9-4a77-b97c-17367a3afe99', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 46, 'data': {'sin': {'value': 0.9510565162951535, 'timestamp': 1433074301.1267681}, 'theta': {'value': 0.0, 'timestamp': 1433074301.1267681}}}
Emitted Event:
{'time': 1433074301.1275179, 'uid': 'da2e64c4-62a3-4254-85dc-38e295486c0f', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 47, 'data': {'sin': {'value': 0.9909497617679348, 'timestamp': 1433074301.1275179}, 'theta': {'value': 0.4487989505128276, 'timestamp': 1433074301.1275179}}}
Emitted Event:
{'time': 1433074301.1282675, 'uid': '9aae2c9a-83b4-4360-a096-637b3fb17369', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 48, 'data': {'sin': {'value': 0.8345732537213028, 'timestamp': 1433074301.1282675}, 'theta': {'value': 0.8975979010256552, 'timestamp': 1433074301.1282675}}}
Emitted Event:
{'time': 1433074301.1290174, 'uid': 'ac7302ae-e9c0-4bc2-9adb-2876f762818c', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 49, 'data': {'sin': {'value': 0.5128992774059062, 'timestamp': 1433074301.1290174}, 'theta': {'value': 1.3463968515384828, 'timestamp': 1433074301.1290174}}}
Emitted Event:
{'time': 1433074301.1297669, 'uid': 'a6dcbe54-d7c5-43e0-b9d9-4947d9e13eab', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 50, 'data': {'sin': {'value': 0.08963930890343362, 'timestamp': 1433074301.1297669}, 'theta': {'value': 1.7951958020513104, 'timestamp': 1433074301.1297669}}}
Emitted Event:
{'time': 1433074301.1305168, 'uid': 'dce48bda-e61c-4c2a-ace3-11d3073547b7', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 51, 'data': {'sin': {'value': -0.3513748240813426, 'timestamp': 1433074301.1305168}, 'theta': {'value': 2.243994752564138, 'timestamp': 1433074301.1305168}}}
Emitted Event:
{'time': 1433074301.1312666, 'uid': '03296f11-1de9-4456-b264-1ddac6cfcfe6', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 52, 'data': {'sin': {'value': -0.7227948638273913, 'timestamp': 1433074301.1312666}, 'theta': {'value': 2.6927937030769655, 'timestamp': 1433074301.1312666}}}
Emitted Event:
{'time': 1433074301.1320162, 'uid': '67de6970-e40b-4d8c-ab07-fcdc0943ecf2', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 53, 'data': {'sin': {'value': -0.9510565162951535, 'timestamp': 1433074301.1320162}, 'theta': {'value': 3.141592653589793, 'timestamp': 1433074301.1320162}}}
Emitted Event:
{'time': 1433074301.132766, 'uid': '3a5f6042-351c-4c33-a64b-48e258ad4528', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 54, 'data': {'sin': {'value': -0.9909497617679348, 'timestamp': 1433074301.132766}, 'theta': {'value': 3.5903916041026207, 'timestamp': 1433074301.132766}}}
Emitted Event:
{'time': 1433074301.1335156, 'uid': '46a5788b-fc08-442b-991c-c6aa3c2c5f45', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 55, 'data': {'sin': {'value': -0.8345732537213028, 'timestamp': 1433074301.1335156}, 'theta': {'value': 4.039190554615448, 'timestamp': 1433074301.1335156}}}
Emitted Event:
{'time': 1433074301.1342654, 'uid': '08684f12-fc77-4ee7-bcfe-074076c7cd24', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 56, 'data': {'sin': {'value': -0.5128992774059064, 'timestamp': 1433074301.1342654}, 'theta': {'value': 4.487989505128276, 'timestamp': 1433074301.1342654}}}
Emitted Event:
{'time': 1433074301.1350152, 'uid': 'c464b0cb-aa06-4b6b-93ce-578e8e0ba94b', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 57, 'data': {'sin': {'value': -0.08963930890343375, 'timestamp': 1433074301.1350152}, 'theta': {'value': 4.9367884556411035, 'timestamp': 1433074301.1350152}}}
Emitted Event:
{'time': 1433074301.1357648, 'uid': '0ad5e612-c3ff-4f36-a199-8d29498f5d43', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 58, 'data': {'sin': {'value': 0.35137482408134246, 'timestamp': 1433074301.1357648}, 'theta': {'value': 5.385587406153931, 'timestamp': 1433074301.1357648}}}
Emitted Event:
{'time': 1433074301.1365147, 'uid': '104de15a-9be7-4ed8-a823-7d170556d5cf', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 59, 'data': {'sin': {'value': 0.7227948638273913, 'timestamp': 1433074301.1365147}, 'theta': {'value': 5.834386356666759, 'timestamp': 1433074301.1365147}}}
Emitted Event:
{'time': 1433074301.1372643, 'uid': '16a7005f-9fd2-40b2-bddd-5f07cdfb4e0d', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 60, 'data': {'sin': {'value': 0.9510565162951534, 'timestamp': 1433074301.1372643}, 'theta': {'value': 6.283185307179586, 'timestamp': 1433074301.1372643}}}
collect: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': -1},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'value': -1, 'timestamp': 1433074301.322583}}
MSG_CACHE None
*** Emitted Event:
{'uid': 'ddf7492c-d49d-4d39-b8e2-9c2d756c1160', 'time': 1433074301.344698, 'descriptor': '885b1e6f-b8d9-45c8-99bf-5bae20b5897b', 'seq_num': 5, 'data': {'pos': {'value': -1, 'timestamp': 1433074301.322583}}}
save: (None), (), {}
ret: None
MSG_CACHE None
kickoff: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
Emitted Event:
{'time': 1433074301.3594451, 'uid': '05fe1c4a-c7fc-4802-b2a7-a11d947c9c68', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 61, 'data': {'sin': {'value': 1.0, 'timestamp': 1433074301.3594451}, 'theta': {'value': 0.0, 'timestamp': 1433074301.3594451}}}
Emitted Event:
{'time': 1433074301.3603077, 'uid': '337d3db3-97a3-4bd1-9983-697a0a967dd3', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 62, 'data': {'sin': {'value': 0.9009688679024191, 'timestamp': 1433074301.3603077}, 'theta': {'value': 0.4487989505128276, 'timestamp': 1433074301.3603077}}}
Emitted Event:
{'time': 1433074301.3611701, 'uid': '848c3868-c234-4a97-94ee-ad108a65547b', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 63, 'data': {'sin': {'value': 0.6234898018587336, 'timestamp': 1433074301.3611701}, 'theta': {'value': 0.8975979010256552, 'timestamp': 1433074301.3611701}}}
Emitted Event:
{'time': 1433074301.3620327, 'uid': '336cdfcc-45b3-4a21-927b-2c961199c306', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 64, 'data': {'sin': {'value': 0.2225209339563145, 'timestamp': 1433074301.3620327}, 'theta': {'value': 1.3463968515384828, 'timestamp': 1433074301.3620327}}}
Emitted Event:
{'time': 1433074301.3628953, 'uid': 'd346688a-7c99-4064-932b-e375b2ffc4ae', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 65, 'data': {'sin': {'value': -0.22252093395631428, 'timestamp': 1433074301.3628953}, 'theta': {'value': 1.7951958020513104, 'timestamp': 1433074301.3628953}}}
Emitted Event:
{'time': 1433074301.3637578, 'uid': '434c5046-7ad9-4d44-ac40-5c23715e4433', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 66, 'data': {'sin': {'value': -0.6234898018587334, 'timestamp': 1433074301.3637578}, 'theta': {'value': 2.243994752564138, 'timestamp': 1433074301.3637578}}}
Emitted Event:
{'time': 1433074301.3646202, 'uid': '4b6cc7e4-0be8-4915-9e1d-716c69a41952', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 67, 'data': {'sin': {'value': -0.900968867902419, 'timestamp': 1433074301.3646202}, 'theta': {'value': 2.6927937030769655, 'timestamp': 1433074301.3646202}}}
Emitted Event:
{'time': 1433074301.3654828, 'uid': '95f5b1f2-5f91-4813-99c8-481349788d3e', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 68, 'data': {'sin': {'value': -1.0, 'timestamp': 1433074301.3654828}, 'theta': {'value': 3.141592653589793, 'timestamp': 1433074301.3654828}}}
Emitted Event:
{'time': 1433074301.3663454, 'uid': 'dfcec1a8-3af7-4b5e-af72-ff29b8cf4bdb', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 69, 'data': {'sin': {'value': -0.9009688679024193, 'timestamp': 1433074301.3663454}, 'theta': {'value': 3.5903916041026207, 'timestamp': 1433074301.3663454}}}
Emitted Event:
{'time': 1433074301.367208, 'uid': '35f6da16-5650-48dc-b637-28099f6a403e', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 70, 'data': {'sin': {'value': -0.6234898018587337, 'timestamp': 1433074301.367208}, 'theta': {'value': 4.039190554615448, 'timestamp': 1433074301.367208}}}
Emitted Event:
{'time': 1433074301.3680704, 'uid': '32a5b44d-549d-438e-a0e2-02f5acd19e1a', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 71, 'data': {'sin': {'value': -0.22252093395631464, 'timestamp': 1433074301.3680704}, 'theta': {'value': 4.487989505128276, 'timestamp': 1433074301.3680704}}}
Emitted Event:
{'time': 1433074301.368933, 'uid': '2557b172-218c-4155-9404-09e7a357e539', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 72, 'data': {'sin': {'value': 0.22252093395631414, 'timestamp': 1433074301.368933}, 'theta': {'value': 4.9367884556411035, 'timestamp': 1433074301.368933}}}
Emitted Event:
{'time': 1433074301.3697956, 'uid': '9584e7db-7d7c-4027-84d7-70a0baea31ae', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 73, 'data': {'sin': {'value': 0.6234898018587334, 'timestamp': 1433074301.3697956}, 'theta': {'value': 5.385587406153931, 'timestamp': 1433074301.3697956}}}
Emitted Event:
{'time': 1433074301.3706582, 'uid': '274174ab-ee87-422a-8bbf-c1eb2889f775', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 74, 'data': {'sin': {'value': 0.900968867902419, 'timestamp': 1433074301.3706582}, 'theta': {'value': 5.834386356666759, 'timestamp': 1433074301.3706582}}}
Emitted Event:
{'time': 1433074301.3715205, 'uid': '84d583a6-2843-48f7-b1c3-11ecc9ffd639', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 75, 'data': {'sin': {'value': 1.0, 'timestamp': 1433074301.3715205}, 'theta': {'value': 6.283185307179586, 'timestamp': 1433074301.3715205}}}
collect: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': 0},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'value': 0, 'timestamp': 1433074301.561603}}
MSG_CACHE None
*** Emitted Event:
{'uid': 'ade4bd0b-8f2e-4b9d-9434-4ce1c6d25e7f', 'time': 1433074301.585177, 'descriptor': '885b1e6f-b8d9-45c8-99bf-5bae20b5897b', 'seq_num': 6, 'data': {'pos': {'value': 0, 'timestamp': 1433074301.561603}}}
save: (None), (), {}
ret: None
MSG_CACHE None
kickoff: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
Emitted Event:
{'time': 1433074301.6000521, 'uid': 'de95b997-4deb-4b68-9538-8fbc124bf79b', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 76, 'data': {'sin': {'value': 0.9510565162951536, 'timestamp': 1433074301.6000521}, 'theta': {'value': 0.0, 'timestamp': 1433074301.6000521}}}
Emitted Event:
{'time': 1433074301.600863, 'uid': '2916c721-3f3e-4ee3-b328-3f388d0bd749', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 77, 'data': {'sin': {'value': 0.7227948638273916, 'timestamp': 1433074301.600863}, 'theta': {'value': 0.4487989505128276, 'timestamp': 1433074301.600863}}}
Emitted Event:
{'time': 1433074301.6016741, 'uid': '072ffc7a-497a-4b17-890b-9e0992b7b94e', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 78, 'data': {'sin': {'value': 0.3513748240813428, 'timestamp': 1433074301.6016741}, 'theta': {'value': 0.8975979010256552, 'timestamp': 1433074301.6016741}}}
Emitted Event:
{'time': 1433074301.6024849, 'uid': '549ad9fc-88ae-4dca-939a-d04ceb6d42d1', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 79, 'data': {'sin': {'value': -0.08963930890343337, 'timestamp': 1433074301.6024849}, 'theta': {'value': 1.3463968515384828, 'timestamp': 1433074301.6024849}}}
Emitted Event:
{'time': 1433074301.6032958, 'uid': '18e7ae18-6461-4d9b-bea6-868838acdad6', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 80, 'data': {'sin': {'value': -0.512899277405906, 'timestamp': 1433074301.6032958}, 'theta': {'value': 1.7951958020513104, 'timestamp': 1433074301.6032958}}}
Emitted Event:
{'time': 1433074301.6041067, 'uid': '800df5a0-364b-4003-af46-9fd8f0d027e0', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 81, 'data': {'sin': {'value': -0.8345732537213025, 'timestamp': 1433074301.6041067}, 'theta': {'value': 2.243994752564138, 'timestamp': 1433074301.6041067}}}
Emitted Event:
{'time': 1433074301.6049178, 'uid': '3ede33d3-2733-4145-8053-191b80849004', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 82, 'data': {'sin': {'value': -0.9909497617679347, 'timestamp': 1433074301.6049178}, 'theta': {'value': 2.6927937030769655, 'timestamp': 1433074301.6049178}}}
Emitted Event:
{'time': 1433074301.6057286, 'uid': 'b3d40909-9782-4664-b0ff-07360d685677', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 83, 'data': {'sin': {'value': -0.9510565162951536, 'timestamp': 1433074301.6057286}, 'theta': {'value': 3.141592653589793, 'timestamp': 1433074301.6057286}}}
Emitted Event:
{'time': 1433074301.6065395, 'uid': '20008ce8-a33f-4a30-8675-9b14a6146abc', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 84, 'data': {'sin': {'value': -0.7227948638273918, 'timestamp': 1433074301.6065395}, 'theta': {'value': 3.5903916041026207, 'timestamp': 1433074301.6065395}}}
Emitted Event:
{'time': 1433074301.6073503, 'uid': 'b4642bec-97a5-4e2b-8c45-4f75e2c031be', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 85, 'data': {'sin': {'value': -0.3513748240813429, 'timestamp': 1433074301.6073503}, 'theta': {'value': 4.039190554615448, 'timestamp': 1433074301.6073503}}}
Emitted Event:
{'time': 1433074301.6081614, 'uid': '08b7fec6-3921-4928-9684-2acca2e0813a', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 86, 'data': {'sin': {'value': 0.08963930890343325, 'timestamp': 1433074301.6081614}, 'theta': {'value': 4.487989505128276, 'timestamp': 1433074301.6081614}}}
Emitted Event:
{'time': 1433074301.6089723, 'uid': '56776416-7658-454a-b1e2-058da18630f4', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 87, 'data': {'sin': {'value': 0.5128992774059059, 'timestamp': 1433074301.6089723}, 'theta': {'value': 4.9367884556411035, 'timestamp': 1433074301.6089723}}}
Emitted Event:
{'time': 1433074301.6097832, 'uid': 'da6ad6c8-7a0b-4299-97a6-76b202f2eefb', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 88, 'data': {'sin': {'value': 0.8345732537213024, 'timestamp': 1433074301.6097832}, 'theta': {'value': 5.385587406153931, 'timestamp': 1433074301.6097832}}}
Emitted Event:
{'time': 1433074301.610594, 'uid': 'fa3c28d2-486b-42e2-9d5a-3df495503936', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 89, 'data': {'sin': {'value': 0.9909497617679347, 'timestamp': 1433074301.610594}, 'theta': {'value': 5.834386356666759, 'timestamp': 1433074301.610594}}}
Emitted Event:
{'time': 1433074301.6114051, 'uid': 'eb824203-9f98-4708-8903-8c04f08e332b', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 90, 'data': {'sin': {'value': 0.9510565162951536, 'timestamp': 1433074301.6114051}, 'theta': {'value': 6.283185307179586, 'timestamp': 1433074301.6114051}}}
collect: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': 1},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'value': 1, 'timestamp': 1433074301.787918}}
MSG_CACHE None
*** Emitted Event:
{'uid': '06bfafb2-3c03-42bf-a057-419089f01358', 'time': 1433074301.811426, 'descriptor': '885b1e6f-b8d9-45c8-99bf-5bae20b5897b', 'seq_num': 7, 'data': {'pos': {'value': 1, 'timestamp': 1433074301.787918}}}
save: (None), (), {}
ret: None
MSG_CACHE None
kickoff: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
Emitted Event:
{'time': 1433074301.827024, 'uid': '77b9c36b-49f7-4da9-be9a-861a37c3615c', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 91, 'data': {'sin': {'value': 0.8090169943749475, 'timestamp': 1433074301.827024}, 'theta': {'value': 0.0, 'timestamp': 1433074301.827024}}}
Emitted Event:
{'time': 1433074301.8278871, 'uid': '70c8c306-26a4-4bdc-bc27-b746711043b9', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 92, 'data': {'sin': {'value': 0.47386866247299875, 'timestamp': 1433074301.8278871}, 'theta': {'value': 0.4487989505128276, 'timestamp': 1433074301.8278871}}}
Emitted Event:
{'time': 1433074301.8287501, 'uid': 'cb8b205a-0b5d-404b-bbcb-46bb1676caea', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 93, 'data': {'sin': {'value': 0.04486483035051505, 'timestamp': 1433074301.8287501}, 'theta': {'value': 0.8975979010256552, 'timestamp': 1433074301.8287501}}}
Emitted Event:
{'time': 1433074301.8296132, 'uid': '3dbe6604-54eb-4d44-8d63-69a729dd8fcf', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 94, 'data': {'sin': {'value': -0.3930250316539235, 'timestamp': 1433074301.8296132}, 'theta': {'value': 1.3463968515384828, 'timestamp': 1433074301.8296132}}}
Emitted Event:
{'time': 1433074301.8304763, 'uid': 'd1d1e985-2d72-4e8a-93d9-5536df2491c5', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 95, 'data': {'sin': {'value': -0.7530714660036109, 'timestamp': 1433074301.8304763}, 'theta': {'value': 1.7951958020513104, 'timestamp': 1433074301.8304763}}}
Emitted Event:
{'time': 1433074301.8313394, 'uid': '36c1d3e3-90c8-4683-937b-183096b57669', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 96, 'data': {'sin': {'value': -0.9639628606958532, 'timestamp': 1433074301.8313394}, 'theta': {'value': 2.243994752564138, 'timestamp': 1433074301.8313394}}}
Emitted Event:
{'time': 1433074301.8322024, 'uid': '6a1ae64f-b008-4d3a-8cc9-d618bcee1e88', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 97, 'data': {'sin': {'value': -0.9839295885986297, 'timestamp': 1433074301.8322024}, 'theta': {'value': 2.6927937030769655, 'timestamp': 1433074301.8322024}}}
Emitted Event:
{'time': 1433074301.8330655, 'uid': 'cbf05f6e-9a5b-4bf2-8089-a086f6f76d1c', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 98, 'data': {'sin': {'value': -0.8090169943749476, 'timestamp': 1433074301.8330655}, 'theta': {'value': 3.141592653589793, 'timestamp': 1433074301.8330655}}}
Emitted Event:
{'time': 1433074301.8339286, 'uid': '1b997621-35d1-4ac2-9b11-e82d2bc1fcd6', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 99, 'data': {'sin': {'value': -0.47386866247299886, 'timestamp': 1433074301.8339286}, 'theta': {'value': 3.5903916041026207, 'timestamp': 1433074301.8339286}}}
Emitted Event:
{'time': 1433074301.8347917, 'uid': 'e1d11f04-921c-465d-95bf-fc98c4bf0e68', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 100, 'data': {'sin': {'value': -0.04486483035051517, 'timestamp': 1433074301.8347917}, 'theta': {'value': 4.039190554615448, 'timestamp': 1433074301.8347917}}}
Emitted Event:
{'time': 1433074301.8356547, 'uid': 'f77eedd0-8725-4f08-a185-4addfd15bb9f', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 101, 'data': {'sin': {'value': 0.3930250316539234, 'timestamp': 1433074301.8356547}, 'theta': {'value': 4.487989505128276, 'timestamp': 1433074301.8356547}}}
Emitted Event:
{'time': 1433074301.8365178, 'uid': '3e7f9d67-8c81-4fc3-888f-1dce1e4cbe9e', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 102, 'data': {'sin': {'value': 0.7530714660036107, 'timestamp': 1433074301.8365178}, 'theta': {'value': 4.9367884556411035, 'timestamp': 1433074301.8365178}}}
Emitted Event:
{'time': 1433074301.8373809, 'uid': 'cd83df86-9074-4145-b68a-0a56b7cc3d2e', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 103, 'data': {'sin': {'value': 0.9639628606958532, 'timestamp': 1433074301.8373809}, 'theta': {'value': 5.385587406153931, 'timestamp': 1433074301.8373809}}}
Emitted Event:
{'time': 1433074301.838244, 'uid': '79ab0074-9e26-478b-8ba7-3e1102282112', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 104, 'data': {'sin': {'value': 0.9839295885986297, 'timestamp': 1433074301.838244}, 'theta': {'value': 5.834386356666759, 'timestamp': 1433074301.838244}}}
Emitted Event:
{'time': 1433074301.839107, 'uid': '57aac4f4-74f9-421f-9771-46f6578ce522', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 105, 'data': {'sin': {'value': 0.8090169943749477, 'timestamp': 1433074301.839107}, 'theta': {'value': 6.283185307179586, 'timestamp': 1433074301.839107}}}
collect: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': 2},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'value': 2, 'timestamp': 1433074302.021404}}
MSG_CACHE None
*** Emitted Event:
{'uid': '196d4348-ceb1-4b2f-b620-acc47c59e249', 'time': 1433074302.045489, 'descriptor': '885b1e6f-b8d9-45c8-99bf-5bae20b5897b', 'seq_num': 8, 'data': {'pos': {'value': 2, 'timestamp': 1433074302.021404}}}
save: (None), (), {}
ret: None
MSG_CACHE None
kickoff: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
Emitted Event:
{'time': 1433074302.0620241, 'uid': 'e2cc64f9-75a8-4b9d-a65e-f80cb36c8e99', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 106, 'data': {'sin': {'value': 0.5877852522924732, 'timestamp': 1433074302.0620241}, 'theta': {'value': 0.0, 'timestamp': 1433074302.0620241}}}
Emitted Event:
{'time': 1433074302.0629013, 'uid': 'ef5ba9c6-a468-4e4b-9965-455c0b9bbc3c', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 107, 'data': {'sin': {'value': 0.17855689479863676, 'timestamp': 1433074302.0629013}, 'theta': {'value': 0.4487989505128276, 'timestamp': 1433074302.0629013}}}
Emitted Event:
{'time': 1433074302.0637784, 'uid': '53655ff6-fb40-43ee-acb5-0f8ab39d0508', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 108, 'data': {'sin': {'value': -0.266036845566675, 'timestamp': 1433074302.0637784}, 'theta': {'value': 0.8975979010256552, 'timestamp': 1433074302.0637784}}}
Emitted Event:
{'time': 1433074302.0646558, 'uid': '0649ed36-ec64-4e96-a3f0-04d2343c3425', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 109, 'data': {'sin': {'value': -0.6579387259397125, 'timestamp': 1433074302.0646558}, 'theta': {'value': 1.3463968515384828, 'timestamp': 1433074302.0646558}}}
Emitted Event:
{'time': 1433074302.0655329, 'uid': '6454d3e8-beca-4656-bab9-a82e00f7cf6e', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 110, 'data': {'sin': {'value': -0.9195277725514506, 'timestamp': 1433074302.0655329}, 'theta': {'value': 1.7951958020513104, 'timestamp': 1433074302.0655329}}}
Emitted Event:
{'time': 1433074302.0664101, 'uid': '321fa5e9-8421-45ce-981f-7eca68fa7027', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 111, 'data': {'sin': {'value': -0.9989930665413147, 'timestamp': 1433074302.0664101}, 'theta': {'value': 2.243994752564138, 'timestamp': 1433074302.0664101}}}
Emitted Event:
{'time': 1433074302.0672872, 'uid': '6cdfc25d-924d-40d9-a4ba-140c110a22d8', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 112, 'data': {'sin': {'value': -0.8805955318567381, 'timestamp': 1433074302.0672872}, 'theta': {'value': 2.6927937030769655, 'timestamp': 1433074302.0672872}}}
Emitted Event:
{'time': 1433074302.0681643, 'uid': 'b681b86f-2c91-4394-81c8-6154be630a85', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 113, 'data': {'sin': {'value': -0.5877852522924732, 'timestamp': 1433074302.0681643}, 'theta': {'value': 3.141592653589793, 'timestamp': 1433074302.0681643}}}
Emitted Event:
{'time': 1433074302.0690417, 'uid': '274ac45c-2579-40aa-b1de-73f90356b6ed', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 114, 'data': {'sin': {'value': -0.1785568947986369, 'timestamp': 1433074302.0690417}, 'theta': {'value': 3.5903916041026207, 'timestamp': 1433074302.0690417}}}
Emitted Event:
{'time': 1433074302.0699189, 'uid': '03490232-bc18-4748-b2cb-dcef0cce7848', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 115, 'data': {'sin': {'value': 0.2660368455666749, 'timestamp': 1433074302.0699189}, 'theta': {'value': 4.039190554615448, 'timestamp': 1433074302.0699189}}}
Emitted Event:
{'time': 1433074302.070796, 'uid': 'c7f8e98f-d240-4a3a-9ccd-a3af51702d1d', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 116, 'data': {'sin': {'value': 0.6579387259397125, 'timestamp': 1433074302.070796}, 'theta': {'value': 4.487989505128276, 'timestamp': 1433074302.070796}}}
Emitted Event:
{'time': 1433074302.0716732, 'uid': '4efc67b4-3eef-41a0-a536-2e72c979b670', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 117, 'data': {'sin': {'value': 0.9195277725514505, 'timestamp': 1433074302.0716732}, 'theta': {'value': 4.9367884556411035, 'timestamp': 1433074302.0716732}}}
Emitted Event:
{'time': 1433074302.0725503, 'uid': 'e704054c-6849-4566-b1c0-a36598c1b7f4', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 118, 'data': {'sin': {'value': 0.9989930665413147, 'timestamp': 1433074302.0725503}, 'theta': {'value': 5.385587406153931, 'timestamp': 1433074302.0725503}}}
Emitted Event:
{'time': 1433074302.0734277, 'uid': '40731c56-520c-41ec-ab52-a2ae906f6383', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 119, 'data': {'sin': {'value': 0.8805955318567381, 'timestamp': 1433074302.0734277}, 'theta': {'value': 5.834386356666759, 'timestamp': 1433074302.0734277}}}
Emitted Event:
{'time': 1433074302.0743048, 'uid': '0d7a0566-1f2b-4d4b-95de-103426fa7a38', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 120, 'data': {'sin': {'value': 0.5877852522924734, 'timestamp': 1433074302.0743048}, 'theta': {'value': 6.283185307179586, 'timestamp': 1433074302.0743048}}}
collect: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': 3},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'value': 3, 'timestamp': 1433074302.260167}}
MSG_CACHE None
*** Emitted Event:
{'uid': 'fe924916-2deb-4468-83b7-070b90952afb', 'time': 1433074302.282946, 'descriptor': '885b1e6f-b8d9-45c8-99bf-5bae20b5897b', 'seq_num': 9, 'data': {'pos': {'value': 3, 'timestamp': 1433074302.260167}}}
save: (None), (), {}
ret: None
MSG_CACHE None
kickoff: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
Emitted Event:
{'time': 1433074302.299938, 'uid': '02450d08-2f2e-47aa-950c-0e738e096a8d', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 121, 'data': {'sin': {'value': 0.3090169943749475, 'timestamp': 1433074302.299938}, 'theta': {'value': 0.0, 'timestamp': 1433074302.299938}}}
Emitted Event:
{'time': 1433074302.3006752, 'uid': 'abf996c9-c439-4bfd-8eb8-6ef24a20b823', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 122, 'data': {'sin': {'value': -0.13423326581765535, 'timestamp': 1433074302.3006752}, 'theta': {'value': 0.4487989505128276, 'timestamp': 1433074302.3006752}}}
Emitted Event:
{'time': 1433074302.3014123, 'uid': 'ab97212b-cb23-4ac3-8236-54354d6c5ade', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 123, 'data': {'sin': {'value': -0.5508969814521024, 'timestamp': 1433074302.3014123}, 'theta': {'value': 0.8975979010256552, 'timestamp': 1433074302.3014123}}}
Emitted Event:
{'time': 1433074302.3021495, 'uid': '81824cfe-5ca8-401a-8947-fb28485a32c0', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 124, 'data': {'sin': {'value': -0.858448793601866, 'timestamp': 1433074302.3021495}, 'theta': {'value': 1.3463968515384828, 'timestamp': 1433074302.3021495}}}
Emitted Event:
{'time': 1433074302.3028867, 'uid': 'e02cb73b-bdc2-435a-b08f-deb8c9b1da87', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 125, 'data': {'sin': {'value': -0.9959742939952391, 'timestamp': 1433074302.3028867}, 'theta': {'value': 1.7951958020513104, 'timestamp': 1433074302.3028867}}}
Emitted Event:
{'time': 1433074302.3036239, 'uid': '9972dc0b-4bf5-4318-829a-acc9a8861e7e', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 126, 'data': {'sin': {'value': -0.9362348706397373, 'timestamp': 1433074302.3036239}, 'theta': {'value': 2.243994752564138, 'timestamp': 1433074302.3036239}}}
Emitted Event:
{'time': 1433074302.3043611, 'uid': '2dfc5bcc-1b1a-494a-9fad-45b5fd09462a', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 127, 'data': {'sin': {'value': -0.6910626489868648, 'timestamp': 1433074302.3043611}, 'theta': {'value': 2.6927937030769655, 'timestamp': 1433074302.3043611}}}
Emitted Event:
{'time': 1433074302.3050983, 'uid': '03226441-3274-49b6-8b5c-3b2866bf2ec8', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 128, 'data': {'sin': {'value': -0.3090169943749476, 'timestamp': 1433074302.3050983}, 'theta': {'value': 3.141592653589793, 'timestamp': 1433074302.3050983}}}
Emitted Event:
{'time': 1433074302.3058357, 'uid': '51e50a9e-3dd3-41a0-86f0-a33ba905179f', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 129, 'data': {'sin': {'value': 0.1342332658176552, 'timestamp': 1433074302.3058357}, 'theta': {'value': 3.5903916041026207, 'timestamp': 1433074302.3058357}}}
Emitted Event:
{'time': 1433074302.3065729, 'uid': '0acb63d0-574f-4a3b-bdf0-c7c29fc3dd0f', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 130, 'data': {'sin': {'value': 0.5508969814521023, 'timestamp': 1433074302.3065729}, 'theta': {'value': 4.039190554615448, 'timestamp': 1433074302.3065729}}}
Emitted Event:
{'time': 1433074302.3073101, 'uid': 'a9837724-1331-406a-8e6f-45eb29b5c36c', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 131, 'data': {'sin': {'value': 0.858448793601866, 'timestamp': 1433074302.3073101}, 'theta': {'value': 4.487989505128276, 'timestamp': 1433074302.3073101}}}
Emitted Event:
{'time': 1433074302.3080473, 'uid': '629f816b-2ea8-4460-b62e-de58a7f978e4', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 132, 'data': {'sin': {'value': 0.995974293995239, 'timestamp': 1433074302.3080473}, 'theta': {'value': 4.9367884556411035, 'timestamp': 1433074302.3080473}}}
Emitted Event:
{'time': 1433074302.3087845, 'uid': 'e31cfdfd-730f-44cc-9ef0-0e343a6e34ee', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 133, 'data': {'sin': {'value': 0.9362348706397373, 'timestamp': 1433074302.3087845}, 'theta': {'value': 5.385587406153931, 'timestamp': 1433074302.3087845}}}
Emitted Event:
{'time': 1433074302.3095217, 'uid': '93b41173-d840-42a5-94d3-116720465640', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 134, 'data': {'sin': {'value': 0.6910626489868649, 'timestamp': 1433074302.3095217}, 'theta': {'value': 5.834386356666759, 'timestamp': 1433074302.3095217}}}
Emitted Event:
{'time': 1433074302.3102589, 'uid': 'e7cd3eba-ec0d-4bc6-bdc0-284cf69afeb2', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 135, 'data': {'sin': {'value': 0.3090169943749478, 'timestamp': 1433074302.3102589}, 'theta': {'value': 6.283185307179586, 'timestamp': 1433074302.3102589}}}
collect: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
create: (None), (), {}
ret: None
MSG_CACHE None
set: (mover: motor), ({'pos': 4},), {}
ret: None
MSG_CACHE None
trigger: (mover: motor), (), {}
ret: None
MSG_CACHE None
read: (mover: motor), (), {}
ret: {'pos': {'value': 4, 'timestamp': 1433074302.49277}}
MSG_CACHE None
*** Emitted Event:
{'uid': '659ca984-ef73-498e-a850-ec8e0204a88a', 'time': 1433074302.518136, 'descriptor': '885b1e6f-b8d9-45c8-99bf-5bae20b5897b', 'seq_num': 10, 'data': {'pos': {'value': 4, 'timestamp': 1433074302.49277}}}
save: (None), (), {}
ret: None
MSG_CACHE None
kickoff: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
Emitted Event:
{'time': 1433074302.534898, 'uid': '0ee5ea01-4dff-42d0-ba52-fc8e46d9089c', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 136, 'data': {'sin': {'value': 1.2246467991473532e-16, 'timestamp': 1433074302.534898}, 'theta': {'value': 0.0, 'timestamp': 1433074302.534898}}}
Emitted Event:
{'time': 1433074302.5357533, 'uid': '202bc31c-54c8-4573-9502-92bfbda1cc76', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 137, 'data': {'sin': {'value': -0.433883739117558, 'timestamp': 1433074302.5357533}, 'theta': {'value': 0.4487989505128276, 'timestamp': 1433074302.5357533}}}
Emitted Event:
{'time': 1433074302.5366087, 'uid': '9f44b5ad-63a3-4d13-994c-e627f075b555', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 138, 'data': {'sin': {'value': -0.7818314824680297, 'timestamp': 1433074302.5366087}, 'theta': {'value': 0.8975979010256552, 'timestamp': 1433074302.5366087}}}
Emitted Event:
{'time': 1433074302.5374639, 'uid': '17e36b2d-ec7b-4ecc-8917-51702ec34b82', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 139, 'data': {'sin': {'value': -0.9749279121818235, 'timestamp': 1433074302.5374639}, 'theta': {'value': 1.3463968515384828, 'timestamp': 1433074302.5374639}}}
Emitted Event:
{'time': 1433074302.5383191, 'uid': '7c785645-c029-4b32-b78b-87dfaa45ae0d', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 140, 'data': {'sin': {'value': -0.9749279121818236, 'timestamp': 1433074302.5383191}, 'theta': {'value': 1.7951958020513104, 'timestamp': 1433074302.5383191}}}
Emitted Event:
{'time': 1433074302.5391743, 'uid': '10aaec3b-69c2-4e14-bc1c-2a420903e869', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 141, 'data': {'sin': {'value': -0.7818314824680299, 'timestamp': 1433074302.5391743}, 'theta': {'value': 2.243994752564138, 'timestamp': 1433074302.5391743}}}
Emitted Event:
{'time': 1433074302.5400298, 'uid': '0a3638b2-5eaf-4ab2-82dc-d3ec3e8409b2', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 142, 'data': {'sin': {'value': -0.4338837391175583, 'timestamp': 1433074302.5400298}, 'theta': {'value': 2.6927937030769655, 'timestamp': 1433074302.5400298}}}
Emitted Event:
{'time': 1433074302.540885, 'uid': '50a74f77-be10-4d93-8f32-6c404c4578a7', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 143, 'data': {'sin': {'value': -2.4492935982947064e-16, 'timestamp': 1433074302.540885}, 'theta': {'value': 3.141592653589793, 'timestamp': 1433074302.540885}}}
Emitted Event:
{'time': 1433074302.5417402, 'uid': '333333ec-ff9d-4074-bc4d-9e0036562857', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 144, 'data': {'sin': {'value': 0.4338837391175579, 'timestamp': 1433074302.5417402}, 'theta': {'value': 3.5903916041026207, 'timestamp': 1433074302.5417402}}}
Emitted Event:
{'time': 1433074302.5425954, 'uid': '896731ff-fa01-4725-8f69-7e6965f037e9', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 145, 'data': {'sin': {'value': 0.7818314824680296, 'timestamp': 1433074302.5425954}, 'theta': {'value': 4.039190554615448, 'timestamp': 1433074302.5425954}}}
Emitted Event:
{'time': 1433074302.5434508, 'uid': 'ee20d864-2882-4e82-8494-86c7d3642289', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 146, 'data': {'sin': {'value': 0.9749279121818235, 'timestamp': 1433074302.5434508}, 'theta': {'value': 4.487989505128276, 'timestamp': 1433074302.5434508}}}
Emitted Event:
{'time': 1433074302.544306, 'uid': 'eb433f6d-2d51-4d7a-becc-ceecfac0acfb', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 147, 'data': {'sin': {'value': 0.9749279121818237, 'timestamp': 1433074302.544306}, 'theta': {'value': 4.9367884556411035, 'timestamp': 1433074302.544306}}}
Emitted Event:
{'time': 1433074302.5451612, 'uid': '48a4edfa-e958-4f3f-938f-99f5e2cd2bd0', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 148, 'data': {'sin': {'value': 0.78183148246803, 'timestamp': 1433074302.5451612}, 'theta': {'value': 5.385587406153931, 'timestamp': 1433074302.5451612}}}
Emitted Event:
{'time': 1433074302.5460165, 'uid': 'd07f0dec-decf-49e9-8faa-2d85a76127ad', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 149, 'data': {'sin': {'value': 0.43388373911755845, 'timestamp': 1433074302.5460165}, 'theta': {'value': 5.834386356666759, 'timestamp': 1433074302.5460165}}}
Emitted Event:
{'time': 1433074302.5468719, 'uid': '63e363d3-ac4c-45a7-b9b5-0597b95ff26e', 'descriptor': '1f3835d1-ff74-4caa-ab44-9637929fd850', 'seq_num': 150, 'data': {'sin': {'value': 3.6739403974420594e-16, 'timestamp': 1433074302.5468719}, 'theta': {'value': 6.283185307179586, 'timestamp': 1433074302.5468719}}}
collect: (flyer: flyer), (), {}
ret: None
MSG_CACHE None
*** Emitted RunStop:
{'time': 1433074302.593774, 'run_start': '86012b98-c6f5-4f2c-8f4d-3dfd427232ce', 'exit_status': 'success', 'reason': ''}
In [35]:
header = db[-1]
header
Out[35]:
beamline_config config_params
time 1433074300.259856 time_as_datetime 2015-05-31 08:11:40.259855 (6 seconds ago) uid 2513a0b4-d6b9-47f6-ab46-22b8c0411a63
beamline_id test event_descriptors data_keys sin dtype number external None shape
source flyer
theta dtype number external None shape
source flyer
run_start 86012b98-c6f5-4f2c-8f4d-3dfd427232ce time 1433074300.456389 time_as_datetime 2015-05-31 08:11:40.456388 (5 seconds ago) uid 1f3835d1-ff74-4caa-ab44-9637929fd850
data_keys pos dtype number external None shape
source motor
run_start 86012b98-c6f5-4f2c-8f4d-3dfd427232ce time 1433074300.425076 time_as_datetime 2015-05-31 08:11:40.425076 (5 seconds ago) uid 885b1e6f-b8d9-45c8-99bf-5bae20b5897b
exit_reason exit_status success group owner tester project run_start_uid 86012b98-c6f5-4f2c-8f4d-3dfd427232ce run_stop_uid b7f9aa59-184b-4bd1-abc9-9d2ff3cf472f sample
scan_id 123 start_datetime 2015-05-31 08:11:40.259758 (6 seconds ago) start_time 1433074300.259759 stop_datetime 2015-05-31 08:11:42.593774 (3 seconds ago) stop_time 1433074302.593774
In [36]:
mux = dm.from_events(db.fetch_events(header))
In [37]:
res = mux.bin_on('sin', interpolation={'pos':'nearest'})
In [38]:
%matplotlib notebook
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
In [39]:
sc = ax.scatter(res.theta.val.values, res.pos.val.values, c=res.sin.values, s=150, cmap='RdBu')
cb = fig.colorbar(sc)
cb.set_label('I [arb]')
ax.set_xlabel(r'$\theta$ [rad]')
ax.set_ylabel('pos [arb]')
ax.set_title('async flyscan + step scan')
fig.canvas.draw()
In [40]:
res
Out[40]:
pos
sin
theta
time
val
count
val
val
val
count
std
max
min
bin
0
-5
1
3.090170e-01
0.000000
2015-05-31 12:11:40.436950
2
NaT
2015-05-31 12:11:40.444899
2015-05-31 12:11:40.429001
1
-5
0
6.910626e-01
0.448799
2015-05-31 12:11:40.445948
1
NaT
2015-05-31 12:11:40.445948
2015-05-31 12:11:40.445948
2
-5
0
9.362349e-01
0.897598
2015-05-31 12:11:40.446996
1
NaT
2015-05-31 12:11:40.446996
2015-05-31 12:11:40.446996
3
-5
0
9.959743e-01
1.346397
2015-05-31 12:11:40.448045
1
NaT
2015-05-31 12:11:40.448045
2015-05-31 12:11:40.448045
4
-5
0
8.584488e-01
1.795196
2015-05-31 12:11:40.449094
1
NaT
2015-05-31 12:11:40.449094
2015-05-31 12:11:40.449094
5
-5
0
5.508970e-01
2.243995
2015-05-31 12:11:40.450143
1
NaT
2015-05-31 12:11:40.450143
2015-05-31 12:11:40.450143
6
-5
0
1.342333e-01
2.692794
2015-05-31 12:11:40.451191
1
NaT
2015-05-31 12:11:40.451191
2015-05-31 12:11:40.451191
7
-5
0
-3.090170e-01
3.141593
2015-05-31 12:11:40.452240
1
NaT
2015-05-31 12:11:40.452240
2015-05-31 12:11:40.452240
8
-5
0
-6.910626e-01
3.590392
2015-05-31 12:11:40.453289
1
NaT
2015-05-31 12:11:40.453289
2015-05-31 12:11:40.453289
9
-5
0
-9.362349e-01
4.039191
2015-05-31 12:11:40.454338
1
NaT
2015-05-31 12:11:40.454338
2015-05-31 12:11:40.454338
10
-5
0
-9.959743e-01
4.487990
2015-05-31 12:11:40.455386
1
NaT
2015-05-31 12:11:40.455386
2015-05-31 12:11:40.455386
11
-5
0
-8.584488e-01
4.936788
2015-05-31 12:11:40.456435
1
NaT
2015-05-31 12:11:40.456435
2015-05-31 12:11:40.456435
12
-5
0
-5.508970e-01
5.385587
2015-05-31 12:11:40.457484
1
NaT
2015-05-31 12:11:40.457484
2015-05-31 12:11:40.457484
13
-5
0
-1.342333e-01
5.834386
2015-05-31 12:11:40.458533
1
NaT
2015-05-31 12:11:40.458533
2015-05-31 12:11:40.458533
14
-5
0
3.090170e-01
6.283185
2015-05-31 12:11:40.459581
1
NaT
2015-05-31 12:11:40.459581
2015-05-31 12:11:40.459581
15
-4
1
5.877853e-01
0.000000
2015-05-31 12:11:40.667560
2
NaT
2015-05-31 12:11:40.675251
2015-05-31 12:11:40.659869
16
-4
0
8.805955e-01
0.448799
2015-05-31 12:11:40.676091
1
NaT
2015-05-31 12:11:40.676091
2015-05-31 12:11:40.676091
17
-4
0
9.989931e-01
0.897598
2015-05-31 12:11:40.676932
1
NaT
2015-05-31 12:11:40.676932
2015-05-31 12:11:40.676932
18
-4
0
9.195278e-01
1.346397
2015-05-31 12:11:40.677773
1
NaT
2015-05-31 12:11:40.677773
2015-05-31 12:11:40.677773
19
-4
0
6.579387e-01
1.795196
2015-05-31 12:11:40.678613
1
NaT
2015-05-31 12:11:40.678613
2015-05-31 12:11:40.678613
20
-4
0
2.660368e-01
2.243995
2015-05-31 12:11:40.679454
1
NaT
2015-05-31 12:11:40.679454
2015-05-31 12:11:40.679454
21
-4
0
-1.785569e-01
2.692794
2015-05-31 12:11:40.680294
1
NaT
2015-05-31 12:11:40.680294
2015-05-31 12:11:40.680294
22
-4
0
-5.877853e-01
3.141593
2015-05-31 12:11:40.681135
1
NaT
2015-05-31 12:11:40.681135
2015-05-31 12:11:40.681135
23
-4
0
-8.805955e-01
3.590392
2015-05-31 12:11:40.681975
1
NaT
2015-05-31 12:11:40.681975
2015-05-31 12:11:40.681975
24
-4
0
-9.989931e-01
4.039191
2015-05-31 12:11:40.682816
1
NaT
2015-05-31 12:11:40.682816
2015-05-31 12:11:40.682816
25
-4
0
-9.195278e-01
4.487990
2015-05-31 12:11:40.683656
1
NaT
2015-05-31 12:11:40.683656
2015-05-31 12:11:40.683656
26
-4
0
-6.579387e-01
4.936788
2015-05-31 12:11:40.684497
1
NaT
2015-05-31 12:11:40.684497
2015-05-31 12:11:40.684497
27
-4
0
-2.660368e-01
5.385587
2015-05-31 12:11:40.685338
1
NaT
2015-05-31 12:11:40.685338
2015-05-31 12:11:40.685338
28
-4
0
1.785569e-01
5.834386
2015-05-31 12:11:40.686178
1
NaT
2015-05-31 12:11:40.686178
2015-05-31 12:11:40.686178
29
-4
0
5.877853e-01
6.283185
2015-05-31 12:11:40.687019
1
NaT
2015-05-31 12:11:40.687019
2015-05-31 12:11:40.687019
...
...
...
...
...
...
...
...
...
...
120
3
1
3.090170e-01
0.000000
2015-05-31 12:11:42.291442
2
00:00:22.627417
2015-05-31 12:11:42.299938
2015-05-31 12:11:42.282946
121
3
0
-1.342333e-01
0.448799
2015-05-31 12:11:42.300675
1
NaT
2015-05-31 12:11:42.300675
2015-05-31 12:11:42.300675
122
3
0
-5.508970e-01
0.897598
2015-05-31 12:11:42.301412
1
NaT
2015-05-31 12:11:42.301412
2015-05-31 12:11:42.301412
123
3
0
-8.584488e-01
1.346397
2015-05-31 12:11:42.302150
1
NaT
2015-05-31 12:11:42.302150
2015-05-31 12:11:42.302150
124
3
0
-9.959743e-01
1.795196
2015-05-31 12:11:42.302887
1
NaT
2015-05-31 12:11:42.302887
2015-05-31 12:11:42.302887
125
3
0
-9.362349e-01
2.243995
2015-05-31 12:11:42.303624
1
NaT
2015-05-31 12:11:42.303624
2015-05-31 12:11:42.303624
126
3
0
-6.910626e-01
2.692794
2015-05-31 12:11:42.304361
1
NaT
2015-05-31 12:11:42.304361
2015-05-31 12:11:42.304361
127
3
0
-3.090170e-01
3.141593
2015-05-31 12:11:42.305098
1
NaT
2015-05-31 12:11:42.305098
2015-05-31 12:11:42.305098
128
3
0
1.342333e-01
3.590392
2015-05-31 12:11:42.305836
1
NaT
2015-05-31 12:11:42.305836
2015-05-31 12:11:42.305836
129
3
0
5.508970e-01
4.039191
2015-05-31 12:11:42.306573
1
NaT
2015-05-31 12:11:42.306573
2015-05-31 12:11:42.306573
130
3
0
8.584488e-01
4.487990
2015-05-31 12:11:42.307310
1
NaT
2015-05-31 12:11:42.307310
2015-05-31 12:11:42.307310
131
3
0
9.959743e-01
4.936788
2015-05-31 12:11:42.308047
1
NaT
2015-05-31 12:11:42.308047
2015-05-31 12:11:42.308047
132
3
0
9.362349e-01
5.385587
2015-05-31 12:11:42.308784
1
NaT
2015-05-31 12:11:42.308784
2015-05-31 12:11:42.308784
133
3
0
6.910626e-01
5.834386
2015-05-31 12:11:42.309522
1
NaT
2015-05-31 12:11:42.309522
2015-05-31 12:11:42.309522
134
3
0
3.090170e-01
6.283185
2015-05-31 12:11:42.310259
1
NaT
2015-05-31 12:11:42.310259
2015-05-31 12:11:42.310259
135
4
1
1.224647e-16
0.000000
2015-05-31 12:11:42.526517
2
00:00:22.627417
2015-05-31 12:11:42.534898
2015-05-31 12:11:42.518136
136
NaN
0
-4.338837e-01
0.448799
2015-05-31 12:11:42.535753
1
NaT
2015-05-31 12:11:42.535753
2015-05-31 12:11:42.535753
137
NaN
0
-7.818315e-01
0.897598
2015-05-31 12:11:42.536609
1
NaT
2015-05-31 12:11:42.536609
2015-05-31 12:11:42.536609
138
NaN
0
-9.749279e-01
1.346397
2015-05-31 12:11:42.537464
1
NaT
2015-05-31 12:11:42.537464
2015-05-31 12:11:42.537464
139
NaN
0
-9.749279e-01
1.795196
2015-05-31 12:11:42.538319
1
NaT
2015-05-31 12:11:42.538319
2015-05-31 12:11:42.538319
140
NaN
0
-7.818315e-01
2.243995
2015-05-31 12:11:42.539174
1
NaT
2015-05-31 12:11:42.539174
2015-05-31 12:11:42.539174
141
NaN
0
-4.338837e-01
2.692794
2015-05-31 12:11:42.540030
1
NaT
2015-05-31 12:11:42.540030
2015-05-31 12:11:42.540030
142
NaN
0
-2.449294e-16
3.141593
2015-05-31 12:11:42.540885
1
NaT
2015-05-31 12:11:42.540885
2015-05-31 12:11:42.540885
143
NaN
0
4.338837e-01
3.590392
2015-05-31 12:11:42.541740
1
NaT
2015-05-31 12:11:42.541740
2015-05-31 12:11:42.541740
144
NaN
0
7.818315e-01
4.039191
2015-05-31 12:11:42.542595
1
NaT
2015-05-31 12:11:42.542595
2015-05-31 12:11:42.542595
145
NaN
0
9.749279e-01
4.487990
2015-05-31 12:11:42.543451
1
NaT
2015-05-31 12:11:42.543451
2015-05-31 12:11:42.543451
146
NaN
0
9.749279e-01
4.936788
2015-05-31 12:11:42.544306
1
NaT
2015-05-31 12:11:42.544306
2015-05-31 12:11:42.544306
147
NaN
0
7.818315e-01
5.385587
2015-05-31 12:11:42.545161
1
NaT
2015-05-31 12:11:42.545161
2015-05-31 12:11:42.545161
148
NaN
0
4.338837e-01
5.834386
2015-05-31 12:11:42.546016
1
NaT
2015-05-31 12:11:42.546016
2015-05-31 12:11:42.546016
149
NaN
0
3.673940e-16
6.283185
2015-05-31 12:11:42.546872
1
NaT
2015-05-31 12:11:42.546872
2015-05-31 12:11:42.546872
150 rows × 9 columns
In [ ]:
Content source: dchabot/bluesky
Similar notebooks: