use of com.neuronrobotics.sdk.dyio.DyIO in project java-bowler by NeuronRobotics.
the class RealLineTrack method main.
/**
* @param args
*/
public static void main(String[] args) {
final DyIO d = new DyIO();
ConnectionDialog.getBowlerDevice(d);
if (d.isAvailable()) {
new Thread() {
public void run() {
DyPIDConfiguration dypid = new // PID group 0
DyPIDConfiguration(// PID group 0
0, // Input channel number
23, // Input mode
DyIOChannelMode.COUNT_IN_INT, // Output Channel
11, // Output mode
DyIOChannelMode.SERVO_OUT);
PIDConfiguration pid = new // PID group
PIDConfiguration(// PID group
0, // enabled
true, // inverted
false, // Async
true, // Kp
1, // Ki
1, .5, 0, false, // Kd
false);
d.ConfigureDynamicPIDChannels(dypid);
d.ConfigurePIDController(pid);
PIDChannel drive = d.getPIDChannel(0);
ServoChannel srv = new ServoChannel(d.getChannel(10));
AbstractRobotDrive mainRobot = new AckermanBot(new ServoRotoryLink(srv, new LinkConfiguration(98, 51, 143, 1)), drive);
AbstractSensor line = new LineSensor(new AnalogInputChannel(d.getChannel(14), true), null, new AnalogInputChannel(d.getChannel(13), true));
// new LineTrack().runTrack(mainRobot,line);
}
}.start();
} else {
System.out.println("Failed");
d.disconnect();
}
}
use of com.neuronrobotics.sdk.dyio.DyIO in project java-bowler by NeuronRobotics.
the class RealTimeLineTrackWithPID method main.
/**
* @param args
*/
public static void main(String[] args) {
try {
DyIO.disableFWCheck();
DyIO dyio = new DyIO();
// dyio.SetPrintModes(true, true);
if (!ConnectionDialog.getBowlerDevice(dyio)) {
System.exit(0);
}
new RealTimeLineTrackWithPID(dyio);
} catch (Exception ex) {
ex.printStackTrace();
System.exit(0);
}
}
use of com.neuronrobotics.sdk.dyio.DyIO in project java-bowler by NeuronRobotics.
the class DCMotorTest method main.
public static void main(String[] args) throws InterruptedException {
DyIO dyio = new DyIO();
if (!ConnectionDialog.getBowlerDevice(dyio)) {
System.exit(1);
}
DCMotorOutputChannel dc = new DCMotorOutputChannel(dyio.getChannel(4));
// Loop 10 times setting the dc output
float time = 5;
for (int i = 0; i < 10; i++) {
System.out.println("Moving.");
// Set the velocity from off to full
int pos = ((i % 2 == 0) ? 128 : 0);
dc.setValue(pos);
// pause between cycles so that the changes are visible
Thread.sleep((long) (time * 1000));
}
dyio.disconnect();
System.exit(0);
}
use of com.neuronrobotics.sdk.dyio.DyIO in project java-bowler by NeuronRobotics.
the class DigitalInputTestSync method main.
/**
* @param args
* @throws InterruptedException
*/
public static void main(String[] args) throws InterruptedException {
DyIO dyio = new DyIO();
if (!ConnectionDialog.getBowlerDevice(dyio)) {
System.exit(1);
}
Log.enableDebugPrint();
DigitalInputChannel dig = new DigitalInputChannel(dyio.getChannel(0));
// Loop forever printing out the state of the button
while (true) {
System.out.println(dig.isHigh());
Thread.sleep(100);
}
}
use of com.neuronrobotics.sdk.dyio.DyIO in project java-bowler by NeuronRobotics.
the class DyIONamespaceTester method main.
/**
* @param args
*/
public static void main(String[] args) {
DyIO dyio = new DyIO();
if (!ConnectionDialog.getBowlerDevice(dyio)) {
System.exit(1);
}
dyio.getRevisions();
String name = dyio.getInfo();
dyio.setInfo("My DyIO");
String newName = dyio.getInfo();
dyio.setInfo(name);
double volts = dyio.getBatteryVoltage(true);
dyio.setServoPowerSafeMode(true);
System.out.println("Name was: " + name + " set to " + newName);
System.out.println("Set to " + newName);
System.out.println("Voltage = " + volts + " bank A = " + dyio.getBankAState() + " bank B = " + dyio.getBankBState());
// System.exit(0);
}
Aggregations