Comments (7)
You can look in the CommandProcessor.cpp
file to see how commands are handled, the code isn't complicated. In most cases, parameters are limited by hardware and the firmware doesn't place any limits on them. Commands that take a step position or range, for example, are 32-bit integers and can generally take any valid uint32 value. Step positions are always in whole steps (not microsteps). So its up to the client application to decide what makes sense. In the ASCOM driver, I use the following:
Item | Min | Max | Default |
---|---|---|---|
Max Speed/velocity (whole steps/sec) | 200 | 1000 | 600 |
Ramp time (ms) | 1000 | 5000 | 1500 |
Dead zone (whole steps) | 1 | circumference @RRR |
2400 |
Circumference (whole steps) | 1 | maxint | 55080 |
Note: I don't recommend changing the circumference. There are a fixed number of teeth in the rack so this should never need to change. Dead zone can be changed but because of how the move commands work, dead zone is essentially rounded to 1 degree increments.
The microstep generator bandwidth is a bit less than 250Hz up to something way faster than any stepper motor would be able to handle. So that's 250 microsteps/sec or about 32 whole steps per second (8 microsteps per step) up to way more than the motors will be able to handle. The default of 600 steps/sec appears to work well. Note that the motors are 200 whole steps/revolution but this is further geared down by a (not quite exactly) 15:1 gearbox, so its about 3,060 whole steps (24,480 microsteps) for one revolution of the pinion. There are 288 rack teeth and 16 pinion teeth, giving 18 pinion revolutions per dome revolution, or 55,080 whole steps, 440,640 microsteps. See https://github.com/nexdome/Firmware/blob/master/Gear%20and%20Step%20Calculator.xlsx for details.
Given that the number of teeth in the rack is fixed at 288, then the dome circumference should be fixed at 55,080 whole steps. It's best to treat this as fixed and I don't recommend letting the user change it or you risk introducing positioning errors and making support incidents for yourself.
The shutter connection is automatic. You have to pay attention to the XBee event notifications to work out the connection state. You are looking for XBee->Online
to signal that the shutter is connected. Any other state means it's offline and shutter commands will be ignored.
Open the shutter using @OPS
and close it using @CLS
Did I miss anything?
from firmware.
Thanks! That answers all my questions. I have other concerns that I talked about in PR #5
from firmware.
Also, what's the maximum range in steps for the shutter? It appears that dead-zones are also applicable to shutter.
from firmware.
As for the rotator, you can set any uint32 value for the shutter range. The default is 46,000 whole steps which was chosen to be "a bit more" than where I empirically determined the most likely location of the limit switch magnet to be. This shouldn't really need to be changed in a client application and I don't recommend doing so - but that's up to you.
The shutter does not have a dead zone because it currently doesn't support moving to any position other than fully open or fully closed. The user can do so manually with the rocker switch, but the firmware only has commands for @OPS
(fully open) and @CLS
(fully close).
from firmware.
Thank you, that clears it up.
For battery voltage, it says it's in ADU? I am getting 878, how to translate that to volts?
from firmware.
from firmware.
Thank you! Now the INDI driver is ready for testing, once we are done with testing, I'll inform the Facebook group if they can test it more thoroughly. Thank you for the great documentation, design, and support!
from firmware.
Related Issues (20)
- Telescope aperture vignetting caused by 1 degree dome azimuth command resolution HOT 4
- Shutter close sensor does not operate correctly if triggered multiple times HOT 1
- slipping sprocket won't close shutter HOT 5
- When using manual control the home status is not updated HOT 16
- what is current version (3.2.1?) and is there a .hex for it HOT 2
- Changing slew destination without waiting for completion HOT 10
- Auto-close shutter on low battery volts HOT 1
- Incorrect values returned for `@RRS` HOT 2
- Shutter status after manual activation HOT 4
- ArduinoSTL library not compatible with AVR boards v1.8.3 HOT 2
- Dead Zone default is too high HOT 5
- Rotator loses pointing accuracy after many small nudges HOT 2
- Manual Rotator button no longer works with 4.0 HOT 9
- how to update to 4.0.1 firmware? HOT 2
- ASCOM Driver should warn the user if the firmware major version is higher than expected HOT 2
- close ( or stop) should immediately stop if the shutter is trying to open HOT 1
- Does the shutter firmware crash after some time? HOT 3
- Xbee S2C HOT 1
- ArduinoSTL library not compatible with AVR boards v1.8.3
- Req way to force close into the negative on the percent open HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from firmware.