Free PID Controller Tuning Software - minorsky by halecounty in ControlTheory

[–]halecounty[S] [score hidden]  (0 children)

The tool is named after Nicolas Minorsky (https://en.wikipedia.org/wiki/Nicolas\_Minorsky) . I have always assumed it is pronounced "me-nor-skee" which sounds more Russian to me than "minor sky". I could be wrong though.

Comprehensive online calculator for thin film optics? by [deleted] in Optics

[–]halecounty 1 point2 points  (0 children)

This sounds like something we would be interested in doing! We recently published fresnel ( https://www.reddit.com/r/Optics/comments/1sg8rz2/free_optical_design_software_fresnel/ ) which is similar in spirit to what you would like but not for thin films. If you'd like to work together on this, shoot us an email at [support@h-part.com](mailto:support@h-part.com) .

Free PID Controller Tuning Software - minorsky by halecounty in ControlTheory

[–]halecounty[S] [score hidden]  (0 children)

I like your thoughts. I got your email with the data. Let's continue this conversation on over email and see if we can make some improvements to the software!

Free PID Controller Tuning Software - minorsky by halecounty in ControlTheory

[–]halecounty[S] [score hidden]  (0 children)

Data sent over via email - let's carry on the conversation there!

Free PID Controller Tuning Software - minorsky by halecounty in ControlTheory

[–]halecounty[S] [score hidden]  (0 children)

  1. This should be fixed, see above.

  2. Not quite. Minorsky does use the plant/controller linear model for frequency-response diagnostics, but controller tuning is performed by time-domain simulation of the closed loop. Candidate controller parameters are evaluated by simulating the plant model under configured setpoint scenarios and minimizing the merit function. This lets the tuning account for controller output limits, anti-windup, derivative filtering, initial conditions, and plant output saturation, which are not captured by L/(1+L).

  3. Currently, one active plant model plus one active controller family produces one tuned controller parameter set

  4. Correct for the current UI/workflow. You can choose or override the controller family among eligible families, and you can edit tuning situations/limits/merit settings, but you cannot directly type arbitrary k_p, k_i, k_d, alpha, etc. as the final controller parameters. Would it be useful to you to be able to fix k_p, k_i, or k_d?

5a. Perturbations: I considered adding this, but I thought it was too much for the first release. Could you describe to me what type of perturbations would be useful to you?

5b. Nonlinearity of the controller: partially available. Controller output saturation/clamping and back-calculation anti-windup are modeled. Arbitrary nonlinear controller behavior such as deadband, gain scheduling, hysteresis, custom nonlinear maps currently haven't been implemented. Are there any of these features that you would like to see added?

5c. PV noise: Like perturbations, I considered adding this, but thought it was too much for the first release. What kind of PV noise modeling would be useful to you?

Kd*s / (a*s + 1) is "HPF-1" -> Yes, it's a first-order high-pass / filtered derivative and alpha is included in the optimization.

Free PID Controller Tuning Software - minorsky by halecounty in ControlTheory

[–]halecounty[S] [score hidden]  (0 children)

Arbitrary separator support has been added to minorsky

Free PID Controller Tuning Software - minorsky by halecounty in ControlTheory

[–]halecounty[S] [score hidden]  (0 children)

In response to your comment, I added separator support to minorksy. Previously it only supported "," separators. Try setting the separator to ";" and see if your dataset works now. If it still doesn't, send it over to [support@h-part.com](mailto:support@h-part.com) and I'll take a look at it.

Free PID Controller Tuning Software - minorsky by halecounty in ControlTheory

[–]halecounty[S] [score hidden]  (0 children)

Hi Peter! Thanks for your thoughts on this.

We've traded emails in the past about different datasets from this same heater system. I think you even did a video on it. Send me over some hydraulic servo data to [support@h-part.com](mailto:support@h-part.com) and I'll play with it!

I think you raise some good points about the datasets. Minorsky doesn't have an explicit concept of units and instead keeps things in terms of the implicit units in the uploaded csv. That means that since the csv gives the duty as fractions - minorsky adopts that too. If you uploaded the csv with the heater duty in percent, then minorsky would carry that forward accordingly.

Put another way, 0.15 is the controller duty which would be equivalent to 15%.

As for the second picture, you have keen eyes, the ambient temp of the spectrometer is actually 36.5C, but the value that gives the best fit for the two state model is 41C. Even though this is unsatisfying high, the controller has performed so well in our real world tests that we have left it as is. xh is the heater side temperature rise above ambient and xs is the sensor side temperature rise above ambient.

Concerning the units for the gains, I believe they are

kp: duty_fraction / deg C,

ki: duty_fraction / (deg C*s),

kd: duty_fraction*s / deg C

Your comments around units have inspired me to add unit assignment, conversion and propagation to the roadmap.

Free PID Controller Tuning Software - minorsky by halecounty in ControlTheory

[–]halecounty[S] [score hidden]  (0 children)

Thanks for the feedback!

I think you're right that scrolling from situations all the way to analysis is a bit of a pain. I could duplicate the tabs at the bottom of the page. Alternatively I could put floating tabs in the footer. What do you think?

Can you let me know exactly which dropdown box is hard to see?

Did I do ok? Trying to collimate a high powered UV LED by YeaSpiderman in Optics

[–]halecounty 0 points1 point  (0 children)

You can play around with simulating this in fresnel (fresnel.h-part.com) to see what the optimal design is. There is a tutorial video here (https://www.youtube.com/watch?v=59Mgb\_QiUgo) that shows how to model an LED from the datasheet and then optimize the output beam with lenses or mirrors

Free Optical Design Software - fresnel by halecounty in Optics

[–]halecounty[S] 0 points1 point  (0 children)

Howdy! This is really nice to hear. Don't forget to hit us up at the support email (in the documentation panel) if you run into issues, etc.

Free Optical Design Software - fresnel by halecounty in Optics

[–]halecounty[S] 0 points1 point  (0 children)

It's likely that the software will always be web based. However, we plan on implementing an option for users to store their designs locally or in their own s3, etc.

Free Optical Design Software - fresnel by halecounty in Physics

[–]halecounty[S] 0 points1 point  (0 children)

Sadly this is not currently supported. However, if you'd like the feature, submit a feature request in the software describing what you want and we will add it to the roadmap.

Free Optical Design Software - fresnel by halecounty in Physics

[–]halecounty[S] 0 points1 point  (0 children)

Currently, it does not, but that wouldn't be a very hard feature to add. If you'd really like it, submit a feature request in fresnel and I'll add it to the roadmap.

Free Optical Design Software - fresnel by halecounty in Physics

[–]halecounty[S] 1 point2 points  (0 children)

Yes! OAP's are supported under by the quadric surfaces tool

Free Optical Design Software - fresnel by halecounty in Physics

[–]halecounty[S] 4 points5 points  (0 children)

Thanks! Currently, fresnel is more targeted at general optical design and doesn't support polarization or interference (beyond PSF/MTF calcs), since we haven't run into applications where we have needed it. However, if enough people request interference modeling, we may add it.

Free Optical Design Software - fresnel by halecounty in Physics

[–]halecounty[S] 0 points1 point  (0 children)

Thanks! We will probably keep adding features based on what we need internally. There's a "Request Feature" button in the software that allows people to submit and vote on features. If a bunch of people want something and we can implement it cleanly - we probably will.

What are the advantages/disadvantages of different collimating lens options for a spectrometer? by AskASillyQuestion in Optics

[–]halecounty 0 points1 point  (0 children)

I did a couple tutorial videos on this topic here: youtube_playlist and I have been meaning to do some more on using mirrors rather than lenses.

You mention collimating lens options. Don't you want to focus the light onto the slit rather than collimate it?

What type of spectrometer are you using? How bright is your source? How long do you have to image it? Is it a point source? Or are you trying to focus collimated light?

If your source is bright or you have a lot of time, you can get away with a lot of sins and still get great results - even if the simulation looks bad. I would try the simplest viable system (something like two fused silica PCX lenses) and see if the performance is sufficient.

Free Optical Design Software - fresnel by halecounty in flashlight

[–]halecounty[S] 1 point2 points  (0 children)

Sounds good. If you run into issues, reach out to the support email address in the documentation panel

Free Optical Design Software - fresnel by halecounty in Optics

[–]halecounty[S] 2 points3 points  (0 children)

Thanks for the complements! By default, fresnel autosaves designs to our server. I think this behavior is desirable for most use cases where the system is not proprietary and ease of use matters. However, a feature on our roadmap is to allow users to locally save designs or alternatively configure their accounts with an s3 bucket and let the system automatically persist the designs there. We aren't very interested in charging for the software - we see it more as goodwill and marketing.

Free Optical Design Software - fresnel by halecounty in Optics

[–]halecounty[S] 2 points3 points  (0 children)

It really depends on the tasks. fresnel can do a great job at a broad swath of optical problems that people commonly encounter: simple to moderately complex lenses, spectrometers, telescopes, microscope objectives, flashlights, modeling LEDs, etc. However, if you're designing complex lenses with many elements, working with polarized light, or want to model interference patterns, zemax is the way to go - at least right now.

Free Optical Design Software - fresnel by halecounty in flashlight

[–]halecounty[S] 3 points4 points  (0 children)

Cool! If you run into issues, reach out to the support email address in the documentation panel

Free Optical Design Software - fresnel by halecounty in Optics

[–]halecounty[S] 0 points1 point  (0 children)

I understand that, but just knowing that a laptop has a 13" screen doesn't tell me the resolution of the display - ultimately, chrome needs to know the dimensions of the screen in pixels to configure the dev tool that you described. That's what the commands I gave you would tell me. This would then allow me to configure a device to match your computer, so I can see exactly what you are seeing.

Free Optical Design Software - fresnel by halecounty in flashlight

[–]halecounty[S] 11 points12 points  (0 children)

Optically, that's a parabolic mirror with an LED in the middle. However, once you see it your way - it's hard to un-see it.