use of com.robo4j.core.ConfigurationException in project robo4j by Robo4J.
the class GyroL3GD20Unit method onInitialization.
@Override
protected void onInitialization(Configuration configuration) throws ConfigurationException {
super.onInitialization(configuration);
sensitivity = Sensitivity.valueOf(configuration.getString(PROPERTY_KEY_SENSITIVITY, "DPS_245"));
period = configuration.getInteger(PROPERTY_KEY_PERIOD, 10);
highPassFilter = configuration.getBoolean(PROPERTY_KEY_HIGH_PASS_FILTER, true);
try {
gyro = new CalibratedGyro(new GyroL3GD20Device(getBus(), getAddress(), sensitivity, highPassFilter));
} catch (IOException e) {
throw new ConfigurationException(String.format("Failed to initialize lidar device. Make sure it is hooked up to bus: %d address: %xd", getBus(), getAddress()), e);
}
}
use of com.robo4j.core.ConfigurationException in project robo4j by Robo4J.
the class RaspistillUnit method onInitialization.
@Override
protected void onInitialization(Configuration configuration) throws ConfigurationException {
Map<String, String> parameters = new HashMap<>();
parameters.put(KEY_WIDTH, configuration.getString(KEY_WIDTH, "320"));
parameters.put(KEY_HEIGHT, configuration.getString(KEY_HEIGHT, "240"));
parameters.put(KEY_EXPOSURE, configuration.getString(KEY_EXPOSURE, "sport"));
parameters.put(KEY_BRIGHTNESS, configuration.getString(KEY_BRIGHTNESS, null));
parameters.put(KEY_SHARPNESS, configuration.getString(KEY_SHARPNESS, null));
parameters.put(KEY_CONTRAST, configuration.getString(KEY_CONTRAST, null));
parameters.put(KEY_TIMEOUT, configuration.getString(KEY_TIMEOUT, "1"));
parameters.put(KEY_TIMELAPSE, configuration.getString(KEY_TIMELAPSE, "100"));
parameters.put(KEY_ROTATION, configuration.getString(KEY_ROTATION, null));
//@formatter:off
cameraCommand = new StringBuilder().append(RaspistillUtils.RASPISTILL_COMMAND).append(Constants.UTF8_SPACE).append(parameters.entrySet().stream().filter(p -> Objects.nonNull(p.getValue())).map(e -> {
StringBuilder c = new StringBuilder();
if (RaspistillUtils.isOption(e.getKey())) {
return c.append(RaspistillUtils.getOption(e.getKey())).append(Constants.UTF8_SPACE).append(e.getValue()).toString();
}
return null;
}).filter(Objects::nonNull).collect(Collectors.joining(Constants.UTF8_SPACE))).append(Constants.UTF8_SPACE).append(DEFAULT_IMAGE_SETUP).toString();
SimpleLoggingUtil.print(getClass(), "cameraCommand:" + cameraCommand);
//@formatter:on
targetOut = configuration.getString("targetOut", null);
String tmpClient = configuration.getString("client", null);
if (tmpClient == null || targetOut == null) {
throw ConfigurationException.createMissingConfigNameException("targetOut, client");
}
storeTarget = configuration.getString("storeTarget", null);
try {
InetAddress inetAddress = InetAddress.getByName(tmpClient);
String clientPort = configuration.getString("clientPort", null);
client = clientPort == null ? inetAddress.getHostAddress() : inetAddress.getHostAddress().concat(":").concat(clientPort);
clientUri = configuration.getString("clientUri", Constants.EMPTY_STRING);
} catch (UnknownHostException e) {
SimpleLoggingUtil.error(getClass(), "unknown ip address", e);
throw ConfigurationException.createMissingConfigNameException("unknown ip address");
}
}
use of com.robo4j.core.ConfigurationException in project robo4j by Robo4J.
the class TestClientImageController method onInitialization.
@Override
protected void onInitialization(Configuration configuration) throws ConfigurationException {
SimpleLoggingUtil.print(getClass(), "camera client init");
Map<String, String> parameters = new HashMap<>();
//64
parameters.put(KEY_WIDTH, configuration.getString(KEY_WIDTH, "320"));
//45
parameters.put(KEY_HEIGHT, configuration.getString(KEY_HEIGHT, "240"));
StringBuilder sb = new StringBuilder(RASPI_CAMERA).append(SPACE).append(parameters.entrySet().stream().map(e -> {
StringBuilder c = new StringBuilder();
if (raspistillProperties.containsKey(e.getKey())) {
return c.append(raspistillProperties.get(e.getKey())).append(SPACE).append(e.getValue()).toString();
}
return null;
}).filter(Objects::nonNull).collect(Collectors.joining(SPACE))).append(SPACE).append(DEFAULT_SETUP);
cameraCommand = sb.toString();
SimpleLoggingUtil.print(getClass(), "camera cameraCommand: " + cameraCommand);
targetOut = configuration.getString("targetOut", null);
String tmpClient = configuration.getString("client", null);
if (tmpClient == null || targetOut == null) {
throw ConfigurationException.createMissingConfigNameException("targetOut, client");
}
try {
InetAddress inetAddress = InetAddress.getByName(tmpClient);
String clientPort = configuration.getString("clientPort", null);
client = clientPort == null ? inetAddress.getHostAddress() : inetAddress.getHostAddress().concat(":").concat(clientPort);
clientUri = configuration.getString("clientUri", Constants.EMPTY_STRING);
} catch (UnknownHostException e) {
SimpleLoggingUtil.error(getClass(), "unknown ip address", e);
throw ConfigurationException.createMissingConfigNameException("unknown ip address");
}
}
use of com.robo4j.core.ConfigurationException in project robo4j by Robo4J.
the class AccelerometerLSM303Unit method onInitialization.
@Override
protected void onInitialization(Configuration configuration) throws ConfigurationException {
super.onInitialization(configuration);
PowerMode powerMode = PowerMode.valueOf(configuration.getString(PROPERTY_KEY_POWER_MODE, PowerMode.NORMAL.name()));
DataRate rate = DataRate.valueOf(configuration.getString(PROPERTY_KEY_RATE, DataRate.HZ_10.name()));
Integer axisEnable = configuration.getInteger(PROPERTY_KEY_AXIS_ENABLE, AccelerometerLSM303Device.AXIS_ENABLE_ALL);
FullScale fullScale = FullScale.valueOf(configuration.getString(PROPERTY_KEY_FULL_SCALE, FullScale.G_2.name()));
Boolean enableHighRes = configuration.getBoolean(PROPERTY_KEY_ENABLE_HIGH_RES, false);
Float3D offsets = readFloat3D(configuration.getChildConfiguration("offsets"));
Float3D multipliers = readFloat3D(configuration.getChildConfiguration("multipliers"));
period = configuration.getInteger(PROPERTY_KEY_PERIOD, 200);
try {
AccelerometerLSM303Device device = new AccelerometerLSM303Device(getBus(), getAddress(), powerMode, rate, axisEnable, fullScale, enableHighRes);
accelerometer = new CalibratedAccelerometer(device, offsets, multipliers);
} catch (IOException e) {
throw new ConfigurationException(String.format("Failed to initialize lidar device. Make sure it is hooked up to bus: %d address: %xd", getBus(), getAddress()), e);
}
}
use of com.robo4j.core.ConfigurationException in project robo4j by Robo4J.
the class GPSUnit method onInitialization.
@Override
protected void onInitialization(Configuration configuration) throws ConfigurationException {
readInterval = configuration.getInteger("readInterval", DEFAULT_READ_INTERVAL);
String scheduler = configuration.getString("scheduler", PROPERTY_VALUE_PLATFORM_SCHEDULER);
boolean usePlatformScheduler = PROPERTY_VALUE_PLATFORM_SCHEDULER.equals(scheduler) ? true : false;
try {
gps = new GPS(readInterval);
} catch (IOException e) {
throw new ConfigurationException("Could not instantiate GPS!", e);
}
if (usePlatformScheduler) {
scheduledFuture = getContext().getScheduler().scheduleAtFixedRate(new Runnable() {
@Override
public void run() {
gps.update();
}
}, 10, readInterval, TimeUnit.MILLISECONDS);
} else {
gps.startAutoUpdate();
}
}
Aggregations