Erster Beitrag
Hallo Welt!
Ich arbeite gerade daran, einen Linear Voice Coil Actuator zu bauen. Siehe dazu die folgende Gleichung für die maximale magnetische Flussdichte:
$$ \begin{equation} B_\text{Max} = \mu_0 \cdot \mu_r \cdot U \cdot b^2 \cdot \frac{1}{4\rho_K \cdot h \cdot d} \end{equation} $$
Hier ist ein Bild der perfekten Spule, ohne jegliche Makel, erst recht nicht auf der linken Seite:
Ich habe mich außerdem mit Hallsensoren auseinandergesetzt und dazu ein Programm geschrieben. Zur Initialisierung des Sensors:
void hall_init()
{
adc_oneshot_unit_init_cfg_t init_config1 = {
.unit_id = ADC_UNIT_1,
.ulp_mode = ADC_ULP_MODE_DISABLE,
};
ESP_ERROR_CHECK(adc_oneshot_new_unit(&init_config1, &adc1_handle));
adc_oneshot_chan_cfg_t config = {
.atten = ADC_ATTEN_DB_12,
.bitwidth = ADC_BITWIDTH_DEFAULT, // 12 Bit
};
ESP_ERROR_CHECK(adc_oneshot_config_channel(adc1_handle, ADC_CHANNEL_6, &config));
}
Zum Auslesen und Konvertieren der Werte:
double hall_read() {
int raw;
ESP_ERROR_CHECK(adc_oneshot_read(adc1_handle, ADC_CHANNEL_6, &raw));
double vout = raw / 4096.0 * 3.551859099804305;
return vout;
}