Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add VSpin (spin spin) Wrapper #243

Merged
merged 101 commits into from
Oct 1, 2024
Merged
Show file tree
Hide file tree
Changes from 68 commits
Commits
Show all changes
101 commits
Select commit Hold shift + click to select a range
21310d1
ignore venv
Ph1so Aug 28, 2024
687cc97
centrifuge can now switch between buckets :oooooo (lets freaking go)
Ph1so Aug 28, 2024
0acc394
forgot to include some code
Ph1so Aug 28, 2024
abcdb22
remove comments
Ph1so Aug 28, 2024
0b96a56
remove comments
Ph1so Aug 28, 2024
a89b7bd
centrifuge can spin at any rpm and time - makes weird noise at end of…
Ph1so Sep 3, 2024
21795e3
changed rpm to g
Ph1so Sep 3, 2024
a1f3aef
Merge branch 'PyLabRobot:main' into centrifuge
Ph1so Sep 3, 2024
d2bee17
removed finish_setup comments
Ph1so Sep 3, 2024
5e4c6d0
cleaned up status_check
Ph1so Sep 3, 2024
bd46d01
fixed spacing
Ph1so Sep 3, 2024
6a30a8e
descriptive names for go_to_bucket2
Ph1so Sep 3, 2024
7a0ba7a
fixed spacing
Ph1so Sep 3, 2024
810b7ad
descriptive variables for start_spin_cycle
Ph1so Sep 3, 2024
e664bed
fixed spacing in start_spin_cycle
Ph1so Sep 3, 2024
58c7135
added swithc to buclet 1 fucntion
Ph1so Sep 6, 2024
4f3bc60
removed TODO comment for adding params for spinning
Ph1so Sep 6, 2024
c71d149
switch to g from rpm
Ph1so Sep 13, 2024
af29f5f
removed plates and dec
Ph1so Sep 13, 2024
f2b7523
status checks before commands
Ph1so Sep 13, 2024
6ebbfa9
removed status
Ph1so Sep 13, 2024
a1e2521
check for wrong acc from user input
Ph1so Sep 13, 2024
e2601af
Merge branch 'main' into centrifuge
Ph1so Sep 13, 2024
c77cf09
changed spacing to 2
Ph1so Sep 13, 2024
0eddb22
using min instead of ifs
Ph1so Sep 13, 2024
203b51f
chanegd spacing to 2 and deleted unused imports
Ph1so Sep 13, 2024
69492a7
fixed spacing (i think)
Ph1so Sep 13, 2024
ecf7619
fixed spacing
Ph1so Sep 13, 2024
93e39ca
fixed g to rpm calculation
Ph1so Sep 13, 2024
e61bf19
fixed long lines
Ph1so Sep 13, 2024
447465d
more spacing fixes
Ph1so Sep 13, 2024
0397d55
fixed unused imports and long line
Ph1so Sep 13, 2024
c3015cf
fixed spacing
Ph1so Sep 13, 2024
2ba2bf7
cahnged ' to "
Ph1so Sep 13, 2024
caa5781
fixed spacing
Ph1so Sep 13, 2024
97ab904
removed optional for Device
Ph1so Sep 13, 2024
78a9671
fixed too large int conversion
Ph1so Sep 13, 2024
12364e4
remove last payloads
Ph1so Sep 13, 2024
ba5e73c
add final new line
Ph1so Sep 13, 2024
0fd79dc
use sublogger
Ph1so Sep 14, 2024
8f86f4b
Device optional
Ph1so Sep 14, 2024
c1bacee
adjustments from rick feedback - removed some comments and added some…
Ph1so Sep 14, 2024
5bcfa7c
switchd unecessary docstrings to pass
Ph1so Sep 14, 2024
0435490
helper function for executing lists of payloads
Ph1so Sep 14, 2024
b58d61e
cleaned up comments
Ph1so Sep 14, 2024
daf9957
added checks for edge cases with spin args
Ph1so Sep 14, 2024
7ec2274
not using com or status check functiosn anymore
Ph1so Sep 14, 2024
e5f02b2
moved finish setup to setup
Ph1so Sep 14, 2024
3f9f370
function comments categories
Ph1so Sep 14, 2024
a2d7ac5
get status to get position befre spin or switch buckets
Ph1so Sep 14, 2024
b18f0bb
prints status position before and after swithc bukcets
Ph1so Sep 14, 2024
b9f9368
huge switch bucket data send optimization
Ph1so Sep 14, 2024
845ff8e
huge optomization for switching buckets (down to only 500 lines of co…
Ph1so Sep 14, 2024
98dd9a7
fixed lint error ' to "
Ph1so Sep 14, 2024
be59f5c
optomized sin function - reduced # packets sent - reduced noise
Ph1so Sep 14, 2024
d6e9338
fixed last space lint error
Ph1so Sep 14, 2024
157dc9d
' to "
Ph1so Sep 14, 2024
49027a5
Merge branch 'main' into centrifuge
Ph1so Sep 15, 2024
a3703c7
remove notebook
Ph1so Sep 20, 2024
d5108ab
inital readme doc
Ph1so Sep 20, 2024
90341ed
jkhales loop refined
Ph1so Sep 20, 2024
b4777b2
fix typo
Ph1so Sep 20, 2024
a29f089
error if no resp receievd
Ph1so Sep 20, 2024
d37b572
remove redund annot
Ph1so Sep 20, 2024
e40be92
reomve redundant annot
Ph1so Sep 20, 2024
073c737
use asyncio instead of time
Ph1so Sep 20, 2024
87d4744
asyncio instead of time
Ph1so Sep 20, 2024
63ebe59
Merge branch 'main' into centrifuge
Ph1so Sep 20, 2024
4efe4b6
adjusted readme doc
Ph1so Sep 21, 2024
80eb773
remove comment
Ph1so Sep 21, 2024
6e27a05
use asyncio
Ph1so Sep 21, 2024
84466d1
Merge branch 'main' into centrifuge
Ph1so Sep 21, 2024
775c27a
self.postiion is now a fucntion get_postiino
Ph1so Sep 27, 2024
a919adb
Merge branch 'main' into centrifuge
rickwierenga Sep 28, 2024
9f1a490
type check
Ph1so Sep 28, 2024
626db93
fix type check
Ph1so Sep 28, 2024
a8d9005
check for device
Ph1so Sep 28, 2024
e4a64ae
fix self.status type
Ph1so Sep 28, 2024
c5dd60c
acc optional type check
Ph1so Sep 28, 2024
eac6c2d
spin cycle param type check
Ph1so Sep 28, 2024
4e94f1e
fix lint check on byte dec
Ph1so Sep 28, 2024
e5757ab
fix lint on init
Ph1so Sep 28, 2024
d1178e7
fix redfinition of bytes
Ph1so Sep 28, 2024
8f9fe01
added rotate distance function
Ph1so Sep 28, 2024
917e214
fix error in backend for rotate_distance
Ph1so Sep 28, 2024
0cf2263
very minor styling
rickwierenga Sep 28, 2024
ec54b8b
remove more state
rickwierenga Sep 28, 2024
3f5487a
remove annot
Ph1so Sep 28, 2024
25f892a
ValueError for value errors
rickwierenga Sep 30, 2024
180afd4
add device_id parameter
rickwierenga Sep 30, 2024
5040ba6
fix get_status and get_position
rickwierenga Sep 30, 2024
faf7798
use 0x instead of "" in init
Ph1so Sep 30, 2024
6757ba9
tiny format and add comment
rickwierenga Sep 30, 2024
5cb7cfb
remove unnecessary status checks
rickwierenga Sep 30, 2024
7505ca0
Merge branch 'main' into centrifuge
Ph1so Sep 30, 2024
dec3b66
really remove unnecessary status checks
rickwierenga Sep 30, 2024
407b5a2
add tiny delay to open and close
rickwierenga Sep 30, 2024
e1d2a18
format
rickwierenga Sep 30, 2024
4602e81
lint type
rickwierenga Oct 1, 2024
7fa2cc5
rename to vspin
rickwierenga Oct 1, 2024
1c79c8f
get status documentation
Ph1so Oct 1, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,5 @@ pyhamilton/LAY-BACKUP
*.egg-info
*.log
build/lib

myenv
12 changes: 12 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,18 @@ lh.move_plate(lh.deck.get_resource("plate"), pr)
data = await pr.read_luminescence()
```

### Centrifuges

PyLabRobot also supports centrifugation (spin spin spin), currently limited to the Agilent Centrifuge. This functionality allows users to automate centrifuging processes on any modern operating system. Here is a quick example of centrifugation at 800 g-force for 60 seconds:
Ph1so marked this conversation as resolved.
Show resolved Hide resolved

```python
from pylabrobot.centrifuge import Centrifuge, AgilentCentrifuge
cf = Centrifuge(name = 'centrifuge', backend = AgilentCentrifuge(), size_x= 1, size_y=1, size_z=1)
await cf.setup()

await cf.start_spin_cycle(g = 800, time_seconds = 60)
```

### Pumps ([docs](https://docs.pylabrobot.org/pumps.html))

Pumping at 100 rpm for 30 seconds using a Masterflex pump:
Expand Down
2 changes: 2 additions & 0 deletions pylabrobot/centrifuge/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
from .centrifuge import Centrifuge
from .agilent_centrifuge import AgilentCentrifuge
Loading
Loading