非常にゆっくりした三角波を作るプログラム
Post date: 2018/01/15 12:31:25
rubyで書いてるので、apt-get install rubyしてもらう必要がありますが、ruby slow_rect.rbで実行します。
start=Time.now.to_f
period = 16.0
vh = 1.0
vl = 0.0
vps = ((vh-vl)/period)*2.0
last = 0
while (time=Time.now.to_f - start) < period
next if time - last < 0.2
if time < period/2
vout = time*vps
else
vout = 2*vh - time*vps
end
puts "#{time}, #{vout}"
system "generate 1 #{vout} 0"
last = time
end
generateというのが、redpitayaに電圧を設定するプログラムなのですが、/opt/redpitaya/binにありますので、PATHに加えるか、直接/opt/redpitaya/bin/generateを呼び出すようにプログラムを変更してください。参考: http://redpitaya.readthedocs.io/en/latest/developerGuide/125-14/fastIO.html
slow_rect.rbはそのままだと16秒かけて0−>1−>0を出力します。適当にvh, periodをいじることができます。あまり頻繁にgenerate実行するのも不都合かも知れないので、0.2秒おき程度にしてますが、この値ももっと小さくすれば出力は滑らかになります。