今後やりたいこと
今日は今後やりたいことを自分でも忘れないようにメモを
//無線のコンテストもそろそろひと段落するしそういうのもやりたいっていうのを列挙する
1.マイコン関連
秋月電子通商のサイトを見ていて見つけたこれ(通販コード:K-04590)
をまずは作ろうかなと
あとはLCDも購入して使えるようにすると面白いかなとか考えてます
授業でもマイコンやってるのでそれを応用して自分でも色々なものを作りたいと思っています
2.無線関連
2016年のコンテストの振り返り等を時間を見つけてやれればと
あとはデータの蓄積に向けて色々と書類を作成しようと思っています
クラブ局なのもあるので色々と蓄積できるようにしないと,,,
3.web関連
今の所フリーのところに置いてある高調波計算ツールとかをそのうちお名前.comでドメイン買ってそっちに移行するかもしれないです
移行したら流れも含めてまた書き込みます
以上色々とやりたいことを
やり始めたら色々と過程の報告等で書き込みますのでアドバイス等いただければと思います
高調波計算(PHP)
過去に一度書いたブログに
こんなものがあったのですが
これをPHPに移植してみました。
ここで改めて仕様の確認
仕様:
html 周波数と何倍にするか(new)を入力
|
PHP 入力された周波数と倍数を変数に代入
|
入力を出力
|
入力された倍数分までwhile処理
|
入力された周波数を整数倍する
|
整数倍した結果が7,14,21,28の運用周波数内かどうか判別する
|
運用周波数内だったら注意を促す文章を出力
|(ここまでwhile処理)
終了
実際のソース
1.入力を受け付けるhtmlファイル
<!docktype html>
<body>
<form action="harmonic.php" method="post">
input freq<br>
<input type="number" step="any" name="freq"><br>
<br>
input multiple<br>
<input type="number" name="multiple"><br>
<input type="submit" name="submit[]" value"send">
</form>
</body>
</html>
入力フォームを二つ作成し、周波数、倍数を入力して次のPHPファイル(harmonic.php)へ送信する
2.計算、出力を行うPHPファイル
<?PHP
ini_set("display_errors", On);
error_reporting(E_ALL);
//変数の定義
$freq=0;
$harm=0;
$n=0;
$mult=$_POST['multiple'];
$freq=$_POST['freq'];
print "input freq";
print $freq;
print "<br>\n";
print "input multiple";
print $mult;
print "<br>\n";
//n倍までの処理
$counter=1;
while($counter < $mult){
$n=$counter+1;
$harm=$freq*$n;
$counter=$counter+1;
print $harm;
print"<br>\n";
echo PHP_EOL;
if($harm >= 7.010){
if($harm <= 7.040){
print "Warning! 7MHz CW covered!! <br>\n";
}
}
if($harm >= 7.060){
if($harm <= 7.140){
print "Warning! 7MHz SSB covered!! <br>\n";
}
}
if($harm >=14.050){
if($harm <=14.080){
print "Warning! 14MHz CW covered!! <br>\n";
}
}
if($harm >= 14.250){
if($harm <=14.300){
print "Warning! 14MHz SSB covered!! <br>\n";
}
}
//21MHz JARLコンテスト周波数内か判別
if($harm >=21.050){
if($harm <= 21.080){
print "Warning! 21MHz CW coverd!!<br>\n";
}
}
if($harm >=21.350){
if($harm <= 21.450){
print "Warning! 21MHz SSB coverd!!<br>\n";
}
}
//28MHz JARLコンテスト周波数内か判別
if($harm >=28.050){
if($harm <= 28.080){
print "Warning! 28MHz CW covered!!<br>\n";
}
}
if($harm >= 28.600){
if($harm <=28.850){
print "Warning 28MHz SSB covered!!<br>\n";
}
}
}?>
基本的にはCで作った時の入力以外の動作をしているものです。
どこかに公開していつでも使えるようにとかする予定は今のところありません。
ホームページのところをPHPで動作するようにしていないためそれが完了した時に公開するかもしれません。
公開したらまたこちらに追記等の形で公開したいと思います。
------------------------------2016/11/3 追記----------------------------------------------
暫定的に http://okapi1231.esy.es にアップロードしました。
今後、年明けまでを目処にしてドメイン購入などして別なところにアップロードする可能性もありますが、とりあえず使って見たい方は上のリンクより確認して見ていただければと思います。
高調波計算
ACAG参加各局お疲れ様でした。
ACAGの話を、、、しないでプログラミングの話
高調波...ある周波数の整数倍の高次の周波数成分
アマチュア無線の周波数って7(3.5)の倍が多いので高調波が他の周波数での運用に影響を与えることがあります。
特に、クラブのコンテストでの運用の時などはアンテナ同士の距離が離れていないため、高調波の影響で他の周波数の運用にも影響が出ている時があります。
アンテナを離すのが理想なんですがそれは¥がかかってしまうのでそれは不可能、、、
そしたら影響のなくなる周波数を調べて運用するしかないと
ということで作りました。
高調波を求めて、他の(7の整数倍)周波数のアマチュア無線の運用に影響のある周波数の時には注意を促すプログラムを
概要
使用言語: C言語
仕様: 周波数を入力
|
10倍の高調波を求めるまでwhile
|
入力を整数倍して出力
|
整数倍した結果が7,14,21,28の運用周波数内かどうか判別する
|
運用周波数内だったら注意を促す文章を出力
|(ここまでwhile処理)
終了
ソース
#include<stdio.h>
int main(void){
printf("input frepuency(MHz)\n");
double freq;
scanf("%lf",&freq);
//元の周波数を入力
int n=0,i=0;
double harm;
while(n<9){
i=n+2;
//倍にする数を求める
harm =freq *i;
//i倍した周波数を求める
printf("%d 倍: %lf MHz\n",i,harm);
//i倍した周波数を倍にした数と一緒に出力
//7MHz JARLコンテスト周波数内か判別
if(harm >= 7.010){
if(harm <= 7.040){
printf("Warning! 7MHz CW covered!!\n");
}
}
if(harm >= 7.060){
if(harm <= 7.140){
printf("Warning! 7MHz SSB covered!!\n");
}
}
//14MHz JARLコンテスト周波数内か判別
if(harm >= 14.050){
if(harm <= 14.080){
printf("Warning! 14MHz CW coverd!!\n");
}
}
if(harm >= 14.250){
if(harm <= 14.300){
printf("Warning! 14MHz SSB coered!!\n");
}
}
//21MHz JARLコンテスト周波数内か判別
if(harm >=21.050){
if(harm <= 21.080){
printf("Warning! 21MHz CW coverd!!\n");
}
}
if(harm >=21.350){
if(harm <= 21.450){
printf("Warning! 21MHz SSB coverd!!\n");
}
}
//28MHz JARLコンテスト周波数内か判別
if(harm >=28.050){
if(harm <= 28.080){
printf("Warning! 28MHz CW covered!!\n");
}
}
if(harm >= 28.600){
if(harm <=28.850){
printf("Warning 28MHz SSB covered!!\n");
}
}
n++;
}
return 0;
}
相変わらずテキトーなソースです。
ぶっちゃけ10倍とか使う気はしないのですが予備用に行けるようにしておいた。
ここら辺も含めてそのうち他の言語にしてもっと使いやすいようにしたい。