uvscada:gxs700
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| uvscada:gxs700 [2017/12/23 18:28] – [Force capture] mcmaster | uvscada:gxs700 [2020/09/16 06:57] (current) – removed mcmaster | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | Quick start guide to getting the sensor working. | ||
| - | |||
| - | - Install software | ||
| - | - Force a capture to verify the sensor works | ||
| - | - Fire x-rays at sensor to test full functionality | ||
| - | |||
| - | [[https:// | ||
| - | |||
| - | [[https:// | ||
| - | |||
| - | ====== WARNING ====== | ||
| - | |||
| - | x-rays are dangerous…make sure you know what you are doing. | ||
| - | |||
| - | ====== Supported devices ====== | ||
| - | |||
| - | ^ Image ^ Vendor | ||
| - | | | Gendex | ||
| - | | | Gendex | ||
| - | | | Dexis | Platinum | ||
| - | | | Dexis | Plus 690 | Probably | ||
| - | |||
| - | I don't know if any other vendors (ex: schick) use the same hardware | ||
| - | |||
| - | |||
| - | ====== Installation ====== | ||
| - | |||
| - | Prereq: | ||
| - | |||
| - | * Linux | ||
| - | * Tested on Ubuntu 12.04 x64, Ubuntu 16.04 x64 | ||
| - | * USB port (duh) | ||
| - | * A supported sensor | ||
| - | * x-ray source: not needed for initial setup | ||
| - | * You DO NOT need calibration files | ||
| - | * See below for details | ||
| - | |||
| - | "$ cmd" means type " | ||
| - | |||
| - | Do (I'll improve this as people run into problems): | ||
| - | |||
| - | - $ sudo apt-get install -y git python-pip | ||
| - | * Also maybe: sudo apt-get install -y python-serial python-numpy python-PIL | ||
| - | - $ sudo pip install libusb1 | ||
| - | - $ git clone [[https:// | ||
| - | - $ cd uvscada | ||
| - | - $ ln -s $PWD/ | ||
| - | - $ ./ | ||
| - | - Plug in your sensor to the USB port | ||
| - | * Re-plug it if its already plugged in | ||
| - | - $ python gxs700/ | ||
| - | * Optional (highly recommended): | ||
| - | - $ python gxs700/ | ||
| - | * Optional: test sensor by forcing a capture | ||
| - | |||
| - | |||
| - | ====== Force capture ====== | ||
| - | |||
| - | This step tests the sensor without actually firing x-rays at it. This is also useful for calibrating sensor defects | ||
| - | |||
| - | {{: | ||
| - | |||
| - | - $ python gxs700/ | ||
| - | - Check which you got: | ||
| - | * Waiting for image: expected response. | ||
| - | * " | ||
| - | - It should have written capture_000_e.png to the current directory | ||
| - | - You should see an image roughly resembling the noise of the reference above. | ||
| - | |||
| - | ====== X-ray capture ====== | ||
| - | |||
| - | {{: | ||
| - | |||
| - | Suggest you force a capture first to verify your sensor is working | ||
| - | |||
| - | - $ python gxs700/ | ||
| - | - Verify it says " | ||
| - | - Fire your x-ray source | ||
| - | - It should notice the x-rays and begin downloading an image | ||
| - | - It should have written capture_000.png to the current directory | ||
| - | - Currently also writes capture_000.bin but will probably remove this soon | ||
| - | - You have your first x-ray! | ||
| - | |||
| - | ====== Diagnostic dump ====== | ||
| - | |||
| - | Please do this and send me the result. | ||
| - | |||
| - | - $ python gxs700/ | ||
| - | |||
| - | Send me the directory " | ||
| - | |||
| - | [[https:// | ||
| - | |||
| - | |||
| - | ====== Troubleshooting ====== | ||
| - | |||
| - | Troubleshooting: | ||
| - | |||
| - | * Couldn' | ||
| - | * Did you run the udev permission script? | ||
| - | * Try re-plugging it in and/or restarting Linux system | ||
| - | * VM: did you connect USB to the guest? | ||
| - | * Didn't detect x-rays | ||
| - | * Can you turn up current higher? | ||
| - | * Only recently added mA monitoring…don' | ||
| - | * Too high or low kVp? | ||
| - | * 60 kVp is a good place to start | ||
| - | |||
| - | Known issues: | ||
| - | |||
| - | * Multiple sensors are not supported | ||
| - | * Would slightly increase software complexity and no use case today for that | ||
| - | * The small sensor is not supported | ||
| - | * Dexis untested | ||
| - | * Really, only tested against my one sensor | ||
| - | * Usually can be interrupted but sometimes will fail init if it is | ||
| - | * Workaround: re-plug the USB port | ||
| - | |||
| - | Misc: | ||
| - | |||
| - | * USB speed limits frame rate to something like 0.3 FPS…don' | ||
| - | * Currently doesn' | ||
| - | * .bin file is raw output. | ||
| - | * Image decoding can probably be made much faster but usually I don't care | ||
| - | * For long runs (ex: CBCT) I'm waiting for sensor to cool anyway | ||
| - | |||
| - | See also: GXS700 general troubleshooting | ||
| - | |||
| - | ====== Decoding ====== | ||
| - | |||
| - | decode.py has a " | ||
| - | |||
| - | Example | ||
| - | |||
| - | < | ||
| - | $ python decode.py -e capture_004.bin capture_004e.png | ||
| - | </ | ||
| - | |||
| - | NOTE: future revisions may require .png input instead of .bin | ||
| - | |||
| - | ====== x-ray trigger ====== | ||
| - | |||
| - | I haven' | ||
| - | |||
| - | ====== x-ray fire ====== | ||
| - | |||
| - | I use a Gendex GE-100 x-ray head. I've found these readily available for <$75 on both eBay and Craigslist. | ||
| - | |||
| - | I control the setup via a DLI WPS7. When wired correctly: | ||
| - | |||
| - | * Outlet 1: HV | ||
| - | * Outlet 2: filament | ||
| - | |||
| - | do something like: | ||
| - | |||
| - | < | ||
| - | $ WPS7_HOST=wpsip WPS7_PASS=mypassword python fire.py | ||
| - | </ | ||
| - | |||
| - | to fire an x-ray (ie when the sensor is armed. | ||
| - | |||
| - | Note: you can also set these environment variables in files like .bashrc so you don't have to type them for each command | ||
| - | |||
| - | I recommend you use a hard wired ethernet line and have a way to cut power to the switch remotely if it fails. | ||
| - | |||
| - | TODO: use WPS7 scripting capability to make switch throws atomic | ||
| - | |||
| - | ====== Calibration ====== | ||
| - | |||
| - | Takes raw, uncalibrated images. | ||
| - | |||
| - | That said, I'm not against coming up with an independent calibration scheme. | ||
| - | |||
| - | ====== Quality ====== | ||
| - | |||
| - | I haven' | ||
| - | |||
| - | ====== Stitching ====== | ||
| - | |||
| - | stitch.sh has an example workflow using pr0ntools (panotools). | ||
| - | |||
uvscada/gxs700.1514053723.txt.gz · Last modified: 2017/12/23 18:28 by mcmaster
