Yesterday I (finally) started developing the controller for the Nerdiskerator. This should monitor the various sensor values and intervene if necessary in a regulatory manner or even deactivate WinDIY. Of course, I noticed a few things on my previous sensor-/actuator list that I would like to change.
- Endstops for brake cylinder: I will not implement this endstops because i think they are not really needed. At the brake cylinders I'm actually using three kind of sensors. One is reading the absolute position of the brake cylinder via a sliding resistor, the next oone helps to read the force that is applied by the brake cylinder onto the disk of the disk generator. This actually already is some kind of endstop because it signals the blocking situation (that we also need for braking properly). The last sensor is the current sensor of the supply voltage for the motor that drives the brake cylinder. If this goes up its easy to indicate if the brake is blocked. In combination with the other sensors it is then easy to determine if the brake cylinder is in the front or back position or that it is blocked in the range between these points.
- Stepper motors are exchanged for dc motors: This was actually needed because the planned stepper motors were way to slow. See here for more details: https://hackaday.io/project/172328/log/180247-the-pitch-actuator-in-action
So much for the things I want to change or remove. Here are the things I would like to add:
- Standby usb power: This will be a 5V/3A USB Output that is driven by the integrated buffer batteries. I just integrated this for later usecases to (for example) power a raspbrryPi by this setup
- Temperature sensors to read the pcb temperature: Recently found the "MCP9808" an I2C controlled temperature sensor that could be helpfull to read temperatures on some specific areas on the PCB
- BME280, Brightness sensor and UV sensor: We are already collecting a lot of data here so some additional climate data cannot hurt either. I think tis is mostly usefull if you also would monitor some environmental data, but of course its not needed to make the Nerdiskerator/WinDIY work.
- External magnetometer: I will add a place for an HMC5883L on the PCB and also for an external one. The external one is for the case that the sensor does not work on the pcb(so close to the elctronics/magnets/generator)
- Button connection on the PCB and externally as WakeUp Source: Some Buttons will be emplemented: For example as emergency stop, wakeUp source ( I plan to let the controller go to sleep in case there is no wind/the generator is not driven)
- Up to 3x Lipo 18650 cells: Since I'm planning to add a USB-Port to the PCB i think some extra power is not bad. Will keep this feature optional, so that you could also use one or two cells only.
- Buzzer: For audio-notification in case something is wrong. Not really sure if this will be helpfull or anyoing. But i like to have the option to install it :)
- MOSFET which is switched on by default, so that even if the electronics fail, the generator always runs under load or is even short-circuited.
- Optional LoRa-WAN Modul: In case WiFi is not enough
Thoughts about the software implementation:
- Communication and configuration runs via web portal that is accesible via the ESP32-Wifi-AccessPoint
- Operating data are provided as JSON which can be accessed via HTTP or MQTT
- The data history of the last X values is saved and can be viewed on the website
- OTA update option?
- Parameters can be set via the web portal and also via rotary encoders and oled
- In case climate sensors are connected, these are also provided via MQTT and HTTP
- Internal batteries have priority (switchable) over the payload
Of course, all of these lists are not exhaustive and changes are likely. I mostly only notice when developing the circuit and later when installing whether something is necessary / suitable. :)
Therefore: If you have any other ideas or suggestions, I look forward to your suggestions. :)