カラクリの館

関西学院大学神戸三田キャンパスにて活動しているものづくり団体「機巧堂」です。メンバーが思い思いに綴ります。

ドローン作成

 初投稿になります。昨年何か作りたいという意思だけでほとんどなにもしていなかったアンドリューです。

初めてなのでどこまでできるかわからないですが、とりあえずドローン作っていきたいと思っています。

最初はあまり手を加えずに参考書籍通りに作っていこうと思います。

というわけで部品等を見てみると合計で4万くらいいきそうです。個人的にはそれでも作ってみたくて、この時間のある春休み中にはある程度形にできればと思っています。

もし協力してくださる方がいれば是非お願いします( ̄^ ̄)ゞ

 

追記

協力してくださる方はコメント欄にコメントしてください

c言語を再履修した俺でも分かる制御工学シリーズ-1

RC回路のステップ応答

c言語でわかる制御工学-その1

 

こんにちは、c言語でわかる制御工学シリーズを始めようと思います。

このシリーズは、制御工学の教科書でよくある「MATLAB」を用いた教科書にMATLABなんてもってないわ!っというツッコミを入れた人向けのシリーズです。また、c言語でPID制御のプログラムってどうやって書くの?っていう人の手助けにもなるかも知れません。

 

必要なものは、c言語を実行できるPCと、高校卒業レベルの物理とラプラス変換の知識です。

 

さて、第一回はRC回路の単位ステップ応答のシミュレーションです。

RC回路とは抵抗とコンデンサーからなる電気回路のことです。今回はR=1.0,C=1.0としています。

この回路に入力としてVi=1[V]を入力します。またコンデンサーにおける電位差Vo[V]を出力とします。

 

f:id:karakuridoh:20170211011346p:plain

 

まずはプログラムを読んでみてください。物理が得意な方はすぐに理解できるかもしれません。ピンとこない方はこれから下の説明を読んでみてください。ちなみに厳密な説明ではありませんのであしからず。

 

ではコンデンサーにおける電位差が出力であるので、これを求める方法を考えてみましょう。

 

まず、キルヒホッフの第二法則から以下のことが成り立ちます。

[入力電圧] = [抵抗における電位差] + [コンデンサーにおける電位差]

 

それでは、各素子における電流と電位差について考えてみましょう。

 

[その1]

抵抗における電流は、抵抗における電位差によって定義される。

これはI=V/Rのことです。

 

[その2]

コンデンサーに溜まった電気量は、流れた電流の総和である。

つまり、Q = [電流i(t)の時間積分]

 

[その3]

コンデンサーにおける電位差は、溜まった電気量がわかればわかる。

これはV=Q/Cの事です。

 

つまり、すべての時刻における回路に流れる電流がわかれば、すべての素子における電位差もわかるということがわかりますね。とにかく電流が知りたいわけです。

 

では初期条件から時刻0.0の時に回路にどのような電流が流れるのかを考えてみます。

時刻0.0において、コンデンサーにおける電荷dQ=0であるので、当然コンデンサーにおける電位差はdVo=0です。

 

では抵抗における電位差をVrとします。

Vr = Vi – dVo = Vi – 0 = Vi

 

ということでt=0.0において回路に流れる電流I(t)は、

I(0.0) = Vr/R = Vi/R = 1/R

 

さて、時刻t=0.0からt=0.1までの間、電流Iコンデンサーを流れるのでコンデンサーに溜まった電気量は、

dQ = dQ + I*0.1

 

では時刻t=0.1の時、コンデンサーにおける電位差は

dVo = dQ/C

 

というわけで、抵抗における電位差Vr

Vr = Vi – dVo

 

よって抵抗に流れる電流は

I = Vr/R

 

さて、時刻t=0.1からt=0.2までの間、電流Iコンデンサーを流れるのでコンデンサーに溜まった電気量は、

dQ = dQ + I*0.1

 

…こうして時刻50.0までfor文が回ります。

 

このプログラム本当に正しいの?という疑問もあると思うの手計算で確認してみましょう。

このへんはどの制御工学の教科書にも書いてある内容なので詳しくは説明しません。

 

まず、回路の微分方程式

Vi(t) = RC*dVo/dt(t) + Vo(t)

 

ラプラス変換して

Vi(s) = (RCs+1)*Vo(s)

 

伝達関数

G(s) = 1/(RCs+1)

 

このシステムに単位ステップ入力Us(t)=1を入力すると、

y(t)=ラプラス[y(s)]=1-exp((-1/RC)*t)

 

これによりy(t)63.2%の出力になる時の時刻が時定数であるから、時定数T=RC=1.0であることがわかります。では実際の出力結果を見てみましょう。

 

TIME=1.000000,Vo=0.651322

 

本当はVo=0.632となってほしいところですが、0.1刻みで近似積分しているのでこんなものでしょう。

 

第一回目は一次遅れのステップ応答のシミュレーションでした、次回は一次遅れのP制御についてc言語でシミュレーションする方法について紹介します。

テストでした

あれ?????????ブログ開設直後に2週間も更新が途絶えたぞ?????????死んだか?????????

 

 

 

 

 

 

 

 

 

 

 

はい

 

テスト期間なので団体の活動はしてませんでした、ブログのブの字も出てません

しかし順次テストが終わって活動が始まるので期待しましょう

 

初投稿スペースマンボウでした

 

追記:ブログ投稿をTwitterでツイートするときってアカウント選んでツイートするんですね

最初、自動的に機巧堂アカウントでツイートされると思ってたら全然違うアカウントでツイートしてました、恥ずかしかったです

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

やっぱり個人名のカテゴリ作りません?

お題に沿って

今週のお題「2017年にやりたいこと」

テスト期間の中勉強することを放棄してお買い物をしていました。真っ赤な金魚です。

さて、唐突ですが2017年にやりたいこと。

・ロボット制作
ライントレースや、ちょっとした機械仕掛けのもの。特に意味は無いけれど、ロボコンの簡単verで何か自律して動いて欲しいなぁ、とぼんやり考えてます。

木工作品制作
日頃の机上の散乱をなんとかしたい。

・ドローン飛行
ドローンに限らず飛行系に興味があります。

3Dプリンター
今年全く出来なかったので自らのためにも春休みから勉強します。

・プログラミング
勉強して知識をつけて『作りたいもの』の幅を広げたいです。

・手芸
関係ない……と見せかけてどうにか絡めて女の子getだぜ!という作戦です。

以上です。多いです。語るのはタダですよね……?

やりたいことは色々あるのですが何から始めれば良いのかわからないというのが正直現在の状況です。
とりあえず数学と物理とプログラミングと木工と3Dプリンター、と言ってるとキャパオーバーしてしまいますよね。笑

2016年は忙しい忙しいと様々なお話を断っておりとてもどうしようもない後輩であったことを自覚してます。今年こそは……という何処にでもありふれた決意ですが見捨てずにいただければ幸いです。

P.Sエンコーダって一体どんな機械に使われているのか誰か教えていただきたいものです(遠い目)。

棚作りの件で

夜分遅くに申し訳ございません。

杉崎です。
この団体では結構レアな情報科の人間です。

早速本題に入りたいと思います。
プロジェクトルームの混沌を解消するべく
棚を作りたいと思いますが
皆様のご都合は如何でしょうか?

ちなみに作業場所の候補としては

・5号館の工作室(安心して作業ができる!)
・プロジェクトルーム

以上の通り。
もし工作室が使えるのであれば
そこで作業する予定。

雲丹で着ぐるみを包みました(Unity編)

こんばんは。millaboです。

 

今日中に投稿しときたいので、続きまた書いときます。

前々回、前回の私millaboの投稿をまだ見ていないひとは、そちらの方を先に見てくださいねー

 

あと少しです。('◇')ゞ

 

前回blenderで作ったと書きました、みみっきゅをUnityで動かしました。

 

今回も話すと長くなるので、簡単にしか書きません。

 

 

ではスタート!!!

改めまして、とうとう最後の工程の紹介です。

 

5. 3DゲームエンジンUnity上に、2~4で作成したものを表示。モデルに自作のアクションをさせてみる。

前回のアニメーションと同じで、動画投稿するとかしないとわかりませんね。

繰り返しになりますが、今はしません? 少なくとも、また色々調べてからします

 

ということで、

Unity上で走りまわるみみっきゅの様子をスクリーンショットでご紹介!!!

 

1. あるく

f:id:karakuridoh:20170102022329p:plain

みみをくねくねさせて頭を動かして、歩きます!

 

2. はしる

f:id:karakuridoh:20170102022653p:plain

あるいている時との差は全然わかりませんが、はしってます笑

みみをくねくねさせて頭を動かすスピード(blenderのアニメーションで設定)も、加速度(Unity上でコードによって書きます)も早いです!

 

3. その他のアニメーション

・例のみみっきゅ特有のアニメーション(敢えて詳しくいわない)

f:id:karakuridoh:20170102023313p:plain

しっぽが地面に埋まってしまってますね( ゚Д゚)あー

気になりますが、今回は良しとしときます。

 

・きょろきょろ

f:id:karakuridoh:20170102023733p:plain

最大限のリスペクトを込めながら、完全オリジナルアニメーションです。

地面に落ちているなにかを探しているかのように、きょろきょろします!

またまたスクリーンショットでわかりにくいかもしれませんが、ちゃんときょろきょろしてます。

 

Unity編以上!!!

 

 

このようにblender編, Unity編共に、直したい直すべきところはいろいろありますが、一通りのことはできましたー

やったー\(^_^)/

 

今回、(これよりもさらに長くなりすぎるので)全然詳しいことは説明せず、作ったということだけ書いてみました。詳しくは、期末試験が終わったり落ち着いた上で整理できたら書こうかな。

 

でも、流れはこんな感じで作ったということがわかってもらえるのではないかと思います。

 

[感想]

とにかく自己満足自己完結楽しかったです。日数的には3, 4日くらいでできました。

今後は春休みにでも、この続きとして簡単なゲームを作れたらなと(今のところは)思っています

是非皆さんもお気に入りのキャラクターにお気に入りのモーションをつけて、動かしてみましょう。

 

最後に...

 機巧堂メンバーのみなさんへ

 

 ブログ書いてねー

 楽しみにまってますー笑

              』

 

ではまた

 

 

(。´-д-)ブログトウコウ、ツカレタ