ブログトップ

電子工作やってみたよ

NHK 大科学実験を見ていたら「坂の下であいましょう」というテーマをやっていました。「サイクロイド曲線上ならばどこからボールを転がしてもスタートが同時ならばゴールも同時」ということです。
大科学実験の売りは「答えはやってみなくちゃわからない」ですけれどこれ計算だけで確認できたら面白いなと思い挑戦してみました。
高校時代の物理の教科書を出してきて勉強を始めました。

c0335218_14250776.jpg


これは Eテレの画面です 白い曲線がサイクロイド曲線と呼ばれる一番短時間で通り抜ける曲線です。
c0335218_14251437.jpg


サイクロイド曲線上での自由落下、曲線のままでは難しいので、最初のステップとして直線を何本も組み合わせて折れ線近似でやるように計画しました。
まず 大きさは 後で実物模型で実験ができるように直径1mの円を転がしたときにできるサイクロイド曲線で計算してみます。
近似直線のつなぎ目は転がる円の20度ごとにしました。  
実際は当然上下逆になりますが、数学としてのグラフはこのままにしたあります。

c0335218_14261852.jpg


計算に使用する公式などは以下のものを使いました
c0335218_14264704.jpg
サイクロイド曲線の売りは、坂のどこからスタートさせても到達するまでの時間は一緒ということなので以下の3種について計算してみます。

0度~180度

c0335218_14252743.jpg

60度~180度

c0335218_14253849.jpg


120度~180度

c0335218_14254899.jpg


計算は、はじめHP29Cを使いましたが、メモリオーバーになったので HP32SIIに乗り換えました。
頑張って節約すれば入ったでしょうが、これ一か月以上やっていたので人間のエネルギーがなくなりました。

HP32SIIでのソフト
c0335218_11434333.jpg

使用変数名表
c0335218_11252601.jpg
結果
0度~180度   0.710557578秒

60度~180度 0.715087422秒 (+0.64%)

120度~180度  0.734847684秒 (+3.42%)

最後の120度~180度が大きくずれていますが、この間は3本と少ない直線で近似しているため誤差が大きくなったものと思われます。
まあ これならスタート地点が変わっても時間は同じと言えるのではないでしょうか。

この後のやりたいこと。
*120度~180度の間は 折れ点の数を10個くらいに増やして結果がどうなるか確認してみたい。
*直径1mの円で実物のサイクロイド曲線を作りビー玉を転がして時間を確認したい。今回の計算はトンチンカンの値かもしれない。
*折れ線の近似曲線ではなく数式通りのサイクロイド曲線で答えを出してみたい。(かなり勉強が必要でしょうか?)
*大科学実験の実験装置の計算をしてみたい。
*サーキットビュアー(回路シュミレーター)に乗せてやってみたい。

この事でちょっと自信が付きました。 これなら 他の物にも同じ調子で、あきらめずにぶつかっていけば何とかなるかもしれないとおもいます。


我が家の庭に咲いた イチゴの花 です。 
雪の下に埋もれていたのに元気です。 大きな実がなるといいですね。
c0335218_16250093.jpg








by telmic-gunma | 2017-05-04 16:31 | HP電卓 | Trackback | Comments(4)

畑のあと片付けをしていたら掘り忘れた、さつまいもが土の中から出てきました。
ささやかな事ですが、うれしいですね。
むかし 机の奥から封の切ってない給料袋が出てきたことがありましたが、その時と同じ位うれしいですね。
(もちろん中身の入った自分のですよ。当時は銀行振り込みではなかったですね)

c0335218_20435460.jpg






















畑にまいておいたチンゲン菜(左)とほうれん草(右)はかなり大きくなっていました。
チンゲン菜の炒め物 新鮮なせいかとても美味しかったです。

c0335218_20441138.jpg



























追記  2016-11-24 上記写真の次の日です。11月には珍しい大雪で20cm以上積もりました。
           チンゲン菜とほうれん草も雪の中。
           ビニール潰れないように雪を落としました。

c0335218_20141589.jpg


















c0335218_20143039.jpg








by telmic-gunma | 2016-11-23 20:59 | 農作業 | Trackback | Comments(2)

HP29Cで素数を出すソフト作ってみました。
LBL0からスタートさせると最初は5から表示して停止します。
R/Sキーを押すたびに次の素数を表示します。
まあ それなりにかなり時間がかかりますので素数 101まで確認しました。
HP15C LE でもほとんど同じソフトなので移植すれば100倍以上の速度で動くので
こんど試してみます。

c0335218_06050533.jpg






















各 変数の意味
R0 未使用
R1 調査する素数  初期値3 加算数2
R2 調査する素数の1/2 (わり算で調査する上限)
R3 素数調査のために割る数 初期値3 加算数2


1- LBL 0
2- 3
3- STO 1 調査する素数  初期値3
4- LBL 1
5- 2
6- STO+1 調査する素数  加算数2
7- RCL 1
8- 2
9- ÷
10- STO 2 調査する素数の1/2をしまう
11- 1
12- STO 3  素数調査のために割る数 初期値3
13- LBL 2
14- 2
15- STO+3  素数調査のために割る数に2を加算する
16- RCL 2  調査する素数の1/2
17- RCL 3 素数調査のために割る数
18- X<=Y  調査する上限に到達したか?
19- GTO 3 まだ到達前なら素数調査を行う
20- RCL 1  素数だったので現在調査した素数を表示する
21- R/S   素数の確認したら また次の素数探しに行く
22- GTO 4  また頭に戻る
23- LBL 3
24- RCL 1  現在調査している素数を読み出す
25- RCL 3  現在素数調査のための割る数を読み出す
26- ÷     わり算をする
27- FRAC 割り切れたかを調べるため、少数以下を取りだす
28- X キ  0 ゼロでないなら割り切れていない
29- GTO 2  割る数を2増やすして調査をやり直すためLBL2行く
30- 0     割り切れたアンサーとしてゼロをセット(現在未使用)
31- LBL 4
32- GTO 1  調べる素数を2増やして最初へ戻りやり直す

追加加筆 2016-10-26
C言語で素数を出すプログラムを載せます。ネットに出ていたものです。
実質 for からの 8行で済んでおり、何をどのような手順でやっているか すぐわかりますね。
上の逆ポーランド法ではリストを緻密に追いかけないとその動きは理解できないと思います。
まあ HP電卓が出来たのは40年以上昔で表示は7セグメントのみ、キー入力もテンキー+アルファ程度 C言語はまだ動いてない時代ですから比べるのは可哀そうとは思います。
思いつきですがC言語や BASIC言語でソフトを書いてから、エクセルか何かで作ったコンパイラを通して、HPの逆ポーランド法に変換させたら、楽にソフトが出来そうな気がしてきました。
自動的なコンパイラでなくても、変換手順書を作っておき、C言語で書いたソフトの流れを機械的に逆ポーランド法に書き換えていけば、悩む時間も、また虫の入り込むことも少なくなると思います。
しかし それならそのままC言語やBASICで実行すれば済む話で、なぜわざわざ逆ポーランド法に変換してHP電卓にやらせる必要があるの、というぐるぐる回りに最後は陥るのですよ。


main( )
int i;
int number;
int flag = 0;

print f("自然数=");
Scanf(%d,& number);

for( i=2; i< number; ++i)
{
if ( number %i == 0 )
{
flag = 1;
break;
}
}





by telmic-gunma | 2016-10-20 06:14 | HP電卓 | Trackback | Comments(0)

logの勉強始めましたが、ユーチューブで先生に教わっての勉強はいい感じです。
本だけの独学よりも、はるかに頭に入りやすい気がします。
でも 解らない事はやはり解らないですけれどね。

この問題 手計算でやるときれいな数値になりますね。
数学の練習問題って最後はみなきれいな数値に落ち着きますね。
まあ そのほうが気分はいいですけれど。

c0335218_08262593.jpg



















同じ問題をHP電卓で解きました。
底が3のままでは電卓に入力できないので式を変形して底が10の常用対数に変えてやって見ました。
丸Bの形で計算すると、10桁表示で2.999999999となりました。
丸Cの形まで進めると、10桁表示で3.000000000となりました。
精度はすごいですね。

c0335218_08263371.jpg










































HP29Cでの計算手順

45
log
42
log
+
70
log
-
3
log
÷






by telmic-gunma | 2016-10-03 11:39 | HP電卓 | Trackback | Comments(2)

以前 YHP製のHP15Cの石取りゲーム解析してみましたが、今回 自分流で作ってみました。 
HP29Cを使ったのですが、HP15Cとの違いはラベル名がアルファベットから数字になっただけで、
他はすべておなじです。
基本の流れはすごく単純でみやすいです。
LBL1 から下に降りて49行からLBL1に戻る一回転のループです。
やはり、自分流の考えで出来るだけシンプルにして自分で作るのが一番わかりやすいですね。
オリジナルの石取りゲーム、なぜあそこまで複雑なのか不思議です。

やはり HP29Cでプログラムを作るのは、楽しいですね。
わくわくするこの気分の違いは何なんでしょうか。 HP15CやHP42Sとは全然違います。
デバッグ時 命令をニーモニックで見ることはできませんが、それほど苦になりません。(HP15Cも同じですが)
プログラム作成時にニーモニックとキーコードを紙に書きながら進めれば、紙のキーコードを見ることで簡単に済ませます。
ただ今回気づいた事と言うか思い出したことは、HP電卓らしさの象徴であるキーのクリックです。
HP25とHP29C のキーはべらぼうに重いのです。一つのキーがONになるために必要な押す力はHP15Cの5倍くらいあるように思えます。
40年前使っていたとき、ピアノをやってるひとがなるという腱鞘炎になるのでないかと思ったのを今頃思い出しました。
これが嫌でHP97が発売されたとき、すぐ買ったのですね。
(HP97はいまのパソコンのキーボードみたいな感じで クリックはありません )
いまは 昔のようにガチャガチャ使わないですからいいですけれど。

( フローチャートをブログ上に載せたいのですが、見やすくて簡単な方法が解ったら追加します。)

c0335218_11000116.jpg






















HP15C石取りゲーム_プログラム

01 LBL 0 ----------- スタート
02 5 ---------------- 逆表示 BLISS(勝)をR3にセット
03 5
04 1
05 7
06 8
07 STO 3
08 3 ---------------- 逆表示 1.LOSE(負)をR4にセット
09 5
10 0
11 7
12 .
13 1
14 STO 4
15 1 ------------------- 残数の初期値 15を R0にセット
16 5
17 STO 0
18 FIX 0 -------------- 少数以下の表示を無くす

19 LBL 1 -------------- メインループの頭
20 RCL 0 -------------- 現在の残数を読み込む
21 CHS ---------------- マイナス表示として人間側の入力とする
22 R/S ---------------- 人間の入力待ち
23 STO -0 ------------- 残数から人間の入力を引く
24 1 ------------------ 残数が1?
25 ENT
26 RCL 0
27 X =< 0
28 GTO 8 -------------- 残数が1なら人間の勝ち
29 RCL 0
30 PAUSE -------------- 人間が取ったあとの残数表示
31 1 ------------------ 電卓側の手の計算で最初1を引く
32 -
33 4
34 ÷ ----------------- 4で割り最良手を計算する
35 FRAC --------------- 小数点以下を出し手の計算
36 4
37 × ----------------- 4倍して引く手を整数化する
38 X<>0 (X フイッチ 0)
39 GTO 2
40 1 ------------------ 引く手が0の時は1にする
41 LBL 2
42 STO -0 ------------- 最善手を残数から引く
43 RCL 0 -------------- 電卓側の残数を見る
44 PAUSE -------------- 電卓側残数を表示する
45 1
46 X <> Y (X,Y チェンジ)
47 X =< Y -------------- 残数1?チェックする
48 GTO 9 -------------- 1なら電卓の勝ち
49 GTO 1 -------------- メインループの頭に戻る

50 LBL 8
51 FIX 1
52 RCL 4 --------------- 電卓の勝ち表示
53 R/S

54 LBL 9
55 FIX 0
56 RCL 3 --------------- 電卓の負け表示
57 R/S



by telmic-gunma | 2016-09-08 15:38 | HP電卓 | Trackback | Comments(2)

「博士の愛した数式」

新聞を見ていたら、「博士の愛した数式」という面白そうな言葉がでてきました。
よく見たら 高校生の読書感想文。
面白そうだと思い、そくアマゾンで注文しました。 
中古本 1円でした。 別途送料が250円ほどかかりますけれど。
直ぐ来た本を見たら帯に10年まえに映画化されたことになっていました。
そこで Uチューブみたら、あるんですね。 2時間ほどのものがタダで。
本を買う前に見ろ、という突っ込みは無しということで。
そく映画をみました。
面白かったです。 寺尾聡が博士役 いろいろ面白い事言ってました。

友愛数 ピタゴラスが見つけたもので 220 と 284
    約数の和が相手の数になる

完全数 約数の和が自分自身と同じになる

数学に最も近い仕事は農業だよ。
数学者もフィールドを選び種をまいて育てるだけ。
大きくなるちからは種のほうにあるんだよ。

などなど  暇なとき ぜひ見てください。
お前 本読んだのか、ですって もちろんまだです。


c0335218_14033121.jpg























by telmic-gunma | 2016-09-02 14:31 | HP電卓 | Trackback | Comments(0)

雑草の威力すごい

スイカの畑 ちょっと油断していたら雑草がはびこってしまいました。  すごい生命力ですね。
二週間くらいほったらかしだったと思います。
これはスイカ畑一面に生えた雑草です。

c0335218_16222908.jpg























スイカも雑草の陰に隠れて見えません。
c0335218_16224595.jpg























雑草を取ったら、ほんとうのスイカの葉っぱは極わずかしかありませんでした。
これじゃあ大きく成長できませんね。

c0335218_16233092.jpg
























農家の人は、毎日雑草との闘いですね。
昔は除草剤なんて無かったのでしょうから家族総出でやったのでしょうね。
友達のお母さん(90歳過ぎてます)は暇さえあれば、畑に出て草取りをしているそうです。
「やらなくてもいいよ」と言ってもすぐ出て行ってしまうそうです。
もう 体に染みついているのでしょうか。仕事をやるにはここまで行きたいですね。


by telmic-gunma | 2016-09-01 17:02 | 農作業 | Trackback | Comments(0)