#### ## ##### ## ## #####
### ## ## ##### ## ## ## ## ######
## ## ##### ## ## ## ## #####
###### ## ## ## ######
#### ## ## ## ####
IMPORTANT: enter the case-INsensitive alphabetic (no numbers) code AND WRITE SOME SHORT summary of changes (below) if you are saving changes. (not required for previewing changes). Wiki-spamming is not tolerated, will be removed, so it does NOT even show up in history. Spammers go away now. Visit Preferences to set your user name Summary of change: '''BoostControl is relatively simple compared to WideBand or OnlineCourse/VeLearning implementation''' The trick is the very flexible boost-target calculation. ---- '''Actuation implementation''' Since the solenoids people kept finding were on/off type with 20..30 Hz max frequency, the original high frequency softpwm implementation had to be changed. 3 parts: * initialize * pid (userspace) calculations. Ideally best to calculate pid just before actuation (eg. always before falling edge - since the rising edge timing varies). * actuation (userspace or interrupt) ** actuation in interrupt with EventQueue the same way as OutputTrigger mst..msp..msq.. would be simplest. ** alternatively actuation in userspace from a lowered freq softpwm My proposal: * call pid() calculation from vems.c mainloop every ? msec using softelapsed(). Do one edge right from there * schedule the other edge via eventqueue. Take care with duty overflow (the same way it's done for injection should be OK) Optional: Add document to category: Wiki formatting: * is Bullet list ** Bullet list subentry ... '''Bold''', ---- is horizontal ruler, <code> preformatted text... </code> See wiki editing HELP for tables and other formatting tips and tricks.