最近、Arduino Yun を購入しました。アナログ ピンのデータを Processing で使用し、OSC で他のアプリケーションにブロードキャストしようとしています。
私は処理フォーラムからこのコードを使用しています (回答はありませんでした) が、処理コード内でこのコードを使用する方法がわかりません。
// jsch is an open source SSH client for Java.
// get it from <a href="http://www.jcraft.com/jsch/" target="_blank" rel="nofollow">http://www.jcraft.com/jsch/</a>
import com.jcraft.jsch.ChannelSftp;
import com.jcraft.jsch.JSch;
import com.jcraft.jsch.Session;
import java.io.*;
String user = "root";
String password = "<ARDUINO PASSWORD>";
String host = "arduino.local";
int port=22;
try
{
JSch jsch = new JSch();
Session session = jsch.getSession(user, host, port);
session.setPassword(password);
session.setConfig("StrictHostKeyChecking", "no"); // less than maximally secure
System.out.println("Establishing Connection...");
session.connect();
System.out.println("Connection established.");
Channel channel = session.openChannel("exec");
// this stream will be used to send data to the Yun
DataOutputStream dataOut = new DataOutputStream(channel.getOutputStream());
channel.setInputStream(null);
// this jsch member class provides remote execution of a shell command
((ChannelExec) channel).setCommand("telnet localhost 6571");
// see <a href="http://arduino.cc/en/Guide/ArduinoYun#toc17" target="_blank" rel="nofollow">http://arduino.cc/en/Guide/ArduinoYun#toc17</a> for why this command
((ChannelExec)channel).setErrStream(System.err);
InputStream in=channel.getInputStream();
// after configuring all channel parameters, we connect, causing the
// command to be executed. Results and further input will be handled
// by the streams
channel.connect();
byte[] tmp=new byte[1024];
// poll input stream forever
while (true) {
while (in.available ()>0) {
int i=in.read(tmp, 0, 1024);
if (i<0)break;
System.out.print(new String(tmp, 0, i));
}
if (channel.isClosed()) {
System.out.println("exit-status: "+channel.getExitStatus());
break;
}
try {
// if used with the Console example code, this will blink the LED
// in time with polling events
dataOut.writeBytes("L\n");
dataOut.flush();
Thread.sleep(1000);
dataOut.writeBytes("H\n");
dataOut.flush();
}
catch(Exception ee) {
System.err.print(ee);
}
}
System.out.println("disconnecting...\n");
channel.disconnect();
session.disconnect();
System.out.println("Finished.\n");
}
catch(Exception e) {
System.err.print(e);
}
Arduino Yun を使用して Processing でデータを操作する方法を教えてもらえますか?
ありがとう!