#avr Logs

May 05 2019

#avr Calendar

12:24 AM gsi__ is now known as gsi_
04:32 AM jancoow: cehteh: heyhey
04:32 AM jancoow: cehteh: my house still didn't burn down so :P
06:49 AM _abc_: Hi. Does anyone know how good/bad the quality of the various (which one?) duino PID algorithm libs is?
08:12 AM cehteh: _abc_: if they use float then they are bad, otherwise pid is reasonabley easy to implement, i hope they dont get *that* wrong
08:16 AM _abc_: Famous last words.
08:16 AM _abc_: There is a jungle of PID implementations for arduino including self tuning ones. The official one by Beauregard is not autotuning.
08:16 AM _abc_: https://github.com/br3ttb/Arduino-PID-Library/
08:17 AM _abc_: cehteh: they do not use floats, they use DOUBLES. Oops all my flash is gone byebye. Typical arduino.
08:17 AM cehteh: what do you want to regulate?
08:17 AM _abc_: https://github.com/br3ttb/Arduino-PID-Library/blob/master/PID_v1.cpp take a look at the 1st class
08:18 AM cehteh: autotuning is another thnig, thats reasonable complicated
08:18 AM _abc_: cehteh: I am not regulating now, looking for ideas. Good ones not arduino ones. But I had to ask and look. /me grabs barf bag.
08:18 AM _abc_: cehteh: it is not, it is reasonably simple once one reads the right texts.
08:18 AM cehteh: for a oven i implemented my own one, just PI no D but linear feed forward and cascading pids
08:19 AM _abc_: Jesus that class initialization takes 6 double params on call. That alone is 10% of the ram on a 328
08:19 AM cehteh: why do you still look at it? :)
08:19 AM _abc_: cehteh: PI is what I need really, and I have it working, just want to rewrite it since it has been shelved for a few years now and now I need it again, but with massive thermal inertia
08:20 AM _abc_: I am trying to fill the barf bag.
08:20 AM tpw_rules: _abc_: fortunately, double and float are the same on arduino
08:20 AM tpw_rules: both single precision 4 bytes
08:20 AM cehteh: google for cascaded PID (with or with out D) cascading is esp great for such cases
08:20 AM _abc_: Heh.
08:21 AM tpw_rules: so you will only fill 90% of your rom with math libraries, instead of 180%
08:21 AM _abc_: I know what a cascade is cehteh, not needed here.
08:21 AM cehteh: ok
08:21 AM _abc_: tpw_rules: yeah, I won't. Someone else will. There ARE other libs, a girl made a process thermostat with timers, stirrer control, pid, AND sd card interface. She did run into flash and ram limits and had to do some clipping and cropping (of strings)
08:22 AM _abc_: tbh, with a good enough compiler one can write all sorts of crap, and the code will come out clean enough.
08:23 AM tpw_rules: gcc for avr isn't very good
08:23 AM tpw_rules: though
08:23 AM _abc_: I am not qualified to judge whether avr-gcc is "good enough" from this p.o.v. but I can suggest any arduino code for benchmarking/test casing gcc :)
08:23 AM tpw_rules: i was deep into it on a larger project a while ago and i was pretty unhappy with some parts
08:24 AM tpw_rules: one pro tip: never ever use int
08:24 AM tpw_rules: uintX_t always
08:24 AM tpw_rules: usually 8
08:24 AM tpw_rules: i'm probably being overly critical though. all the code fit great and ran fast
08:26 AM tpw_rules: you also gotta use progmem for your strings and constant data
08:26 AM _abc_: I don't use int char etc only uint8_t etc
08:26 AM tpw_rules: also i shoulda said i'm not talking to you. just screaming into the void
08:27 AM _abc_: I sometimes parametrize it using a header #defines file since I compile the code on other things and it works there nicely.
08:27 AM _abc_: tpw_rules: stand on the milk crate to be seen
08:28 AM _abc_: Using dillo to browse is fun.
08:28 AM _abc_: frif**k dropped the ball, expired all extensions, so no js-off browsing anymore.
08:28 AM _abc_: Yesterday.
08:30 AM tpw_rules: i haven't noticed that. i wonder why
08:30 AM tpw_rules: i'm kind of scared to quit or update it now
08:35 AM cehteh: _abc_: hotfix is out since yesterday
08:47 AM twnqx: am i bad for thinking uint8_t is annoyingly overly long and redefine all the itntypes to u8, s16 etc?
09:31 AM _abc_: So, anyway, re-read the tehory by Brett B. who wrote the arduino pid library and it is sound, just the way it is implemented is totally not flash and ram friendly on small avrs. A 2560 etc would handle it fine.
06:12 PM byte_warrior: hi friends
06:21 PM rue_shop1: their high again?
11:26 PM day__ is now known as day