仮想通貨の入門記事まとめその他仮想通貨の記事一覧ダイエット記事まとめダイエットはサイエンスである!!!(僕流ダイエット法の分類)僕流ダイエット法(成果:2か月で体重9kg減・体脂肪率8%減)オススメのシリアルは?【主食編】2か月で体重9kg減・体脂肪率8%減に成功した僕が具体的に食べていたものタンパク質をしっかり取るにはやっぱり肉だ!!【肉類編】2か月で体重9kg減・体脂肪率8%減に成功した僕が具体的に食べていたものオススメのプロテインバーは?【プロテインバー編】2か月で体重9kg減・体脂肪率8%減に成功した僕が具体的に食べていたものカロリー制限中だけど甘いものが食べたい!!!【ご褒美編】2か月で体重9kg減・体脂肪率8%減に成功した僕が具体的に食べていたもの外食だ......カロリー制限中なんだけど、何食べよう......【外食編】2か月で体重9kg減・体脂肪率8%減に成功した僕が具体的に食べていたものコンビニってすげぇ!!【コンビニ編】2か月で体重9kg減・体脂肪率8%減に成功した僕が具体的に食べていたものカロリーのある飲み物はやめよう【飲み物編】2か月で体重9kg減・体脂肪率8%減に成功した僕が具体的に食べていたものライザップってどうなの?リバウンドするって聞くけど。制約の多いサラリーマンの副業-調査が命!物欲不要な輸出物販!!制約の多いサラリーマンの副業-ごめんなさいm(__)mアプリ製作はハードル高すぎました(^^;制約の多いサラリーマンの副業-なんだかんだで株は効率良いよ。職業遍歴アルバイトは授業を。アクセス・エクセル・VBA最近、Googleのサーチコンソールを見ていたら、そこそこ多くの方がEasyCommのサンプルコードを求めてこのサイトに来られているということに気が付いた。残念ながら、このサイトにはEasyCommのサンプルコードはなかった。いうか、そもそもが接続する機器次第でデータのフォーマットもバラバラなワケで。何にでも使えるコードを書くのは無理なのではないか。可能だったとしても、そんなコードを作るより、機器に合わせてコードを書く方が遥かに現実的に思える。......とまぁ、グチグチと書いてしまったが、サンプルコードも含めて、EasyCommが上手く動かない人向けの記事を書いてみようかと思う。コード以外の問題が多い一応書いておくと、僕は本職のプログラマーではない。中小企業の雑用係的な位置づけだ。きれいなコードにこだわる方ではないと思う。いっても、EasyCommとはそこそこ縁があり、重量計4種類・バーコードリーダーとして機能するカメラとの接続をするプログラムを作成してきた。どれも社内向けではあるが、日常的に業務にしようしており、大きな不具合は起きていない。それなりにこなれてはいる。いくつかのEasyCommを利用したシステムを作成した中で、自分も何度かドハマりした点について書く。EasyCommを使用したプログラムを実行してみると、エラーが起こったり、何も起こらず、動いているのか止まっているのかさえよく分からないなんてことがよくある。僕の経験的に言うと、多くの場合はコード以外に問題があった。うまく動かなくて困っている方は、まずはコードを見直す前に、下記の点を確認していただきたい。接続ケーブルが合っているかポートが合っているか64bit問題は対策済みか接続ケーブルがあっているかいわゆるRS232Cのケーブルはストレートとクロスのの2種類があり、はた目には違いがない。どちらのケーブルが必要なのか、取扱説明書には載っていることが多いので、まずはそれを確認し、正しいケーブルを準備してください。(取扱説明書がない場合、そのメーカーに問い合わせると、説明書の上位版や開発者向けの説明書なんてのが出てくることもあります)また、それぞれのケーブルにそれぞれ、オス-オス、オス-メス、メス-メスの3通りがあるので、購入する際はそちらも気にしてください。ポートが合っているか一昔前のパソコンだと、RS232Cの接続は大体COM1だったような気がします。実際、普通に端子が1つだけ付いていて、それが1番に対応しているという当然すぎる状態ですよね。最近のパソコンにはそもそもRS232C用の端子がついていないケースが増えてきました。すると、後付けの特注品になったりするわけですね......。昔の名残でCOM1に設定してあるため、後付けの部分はCOM3あたりに設定してあったりするわけです。接続確認をしようさて、ここまで来て、ケーブルに問題なし。なったら、一度、接続確認をしてみましょう。手っ取り早いのはコマンドプロンプトを使う方法でしょうか。やり方はいたって簡単、まずは接続機器からのデータの受け取り方法をなるべく垂れ流しに近い状態に設定します。COM1」と叩きます。データがどんどん表示されていけば、ここまでの接続は完璧です。文字化けなどは問題ありません。文字の調整はコード側で調整する問題です。確認ができたら「Ctrl+c」で停止させましょう。これ以外の確認方法として、RS232Cの中身を確認できるフリーソフトなどを活用するのもありだと思います。僕もVectorで拾ってきたシリアルデバッグツール2とかいうのをたまに使っています。64bit問題は対策済みかさて最後。64bit問題についてですが、これについてはこちらの記事をご確認ください(⇒easycommを64bitのOfficeで動かす方法)サンプルコードさて、ここまで出来たら、次はいよいよコードを少し挙げてみます。機器の接続と切断まず、重要なのは機器と接続を開始する部分です。1」でCOMポートを指定し、機器との接続を開始しています。このコードは機器がCOM1に接続してある場合のコードです。-1」と書けば切断することができます。二行目からで細かい設定をします。このあたり、機器のマニュアルを見ながら合わせていく感じになります。1024&」はいじったことがありません。簡単な機器であれば、二行目・四行目をいじるだけで良いのではないかと思います。逆に二行目と四行目はいじらずに済むことはほとんどないです(^^;二行目で(ボーレート,パリティビット数,データビット数,ストップビット数)を一気に設定しています。ここが正しく設定できないと、データを正しく受け取ることができません。文字化けしたような状態でデータを受け取ってしまうことになります。四行目はデータの切れ目を指定する部分です。機器からのデータの受け取り方によるのですが、垂れ流し状態のデータを受け取る場合には、データが絶えず送られてきます。どこで切って一つのデータと見るのかを確定するためにここの設定が重要となります。上のデータの場合にはデータの間に必ずETXというコードが入る場合の設定です。ec.DELIMs.CrLf」となります。これも機器のマニュアルに書いてあるはずなので、読みながら設定してください。次に接続を終了する部分です。-1こちらはこれだけです。機器の接続と切断をどこに書く?さて、接続切断のコード自体はいたって簡単です。この後、実際にデータを取得するコードを書きますが、コードの内容以上にそれをどこに書くかが重要だと思っています。データを取得するためのアクションが機器側にあるのか、PC側(エクセルやアクセス)にあるのかで書き方が変わってきます。経験的に言って、アクションがPC側にある場合は機器の接続・機器からのデータ取得・機器の切断を一つのプロシージャに書いてしまっても十分使えるものができます。簡単に書くとこんな感じでしょうか。-1問題はアクションが機器側にある場合です。アクセスの場合は、フォームを利用して作るのが無難だと思います。トコトン自動化したいのであれば、開くとき・読み込み時・アクティブ時などに接続のコードを書き、閉じる時・非アクティブ時などに切断のコードを書きます。そこまで、自動化にこだわらないのであれば、機器との接続開始ボタンや切断ボタンを作って管理するのが無難に思います。500」のように書き、タイマー間隔を指定してやります。これで、接続開始とともに機器からのデータを受け取り始めるようになります。0」と書き加えておけば、切断時にエラーが起こることもありません。エクセルの場合はもっと工夫が必要ですが、僕自身エクセルでこういったものを作る時は簡易版と割り切ることが多いので、あまり大きな負荷がかかりそうなものは作ったことがありません。無茶なコードになってしまいますが、Workbookのアクティブ時に接続を開始するコードとデータ取得のコードをDo~Loopの中に入れて書いてしまいます。-1エクセル関数などと併用するとフリーズすることもありますが、すべてVBAに頼ってしまうと、これでも十分動きます。EasyComm自体にDoEventsが書かれているので、エクセルの操作もとりあえずは支障なくできます。(たまにリボンが固まったりしますがCtrl+sで保存したりCtrl+wで閉じたり、タスクバーを右クリックして閉じたりでだましだまし使っていますw)で、非アクティブ時に閉じるコードを書けばとりあえず完成です。ec.AsciiLine」なんて書いてしまいましたが、実際に文字列で取得したデータをそのまま使えることもなく......。大体の場合、MidとかLeftとかRightとかInStrとか駆使して文字列を切り取り、ValやらCIntやらCDblやらCLngやら使って数値にして......てな作業が必要になります。LenやらLenBやら使って、正しくデータが取れたことを確認する必要もあります。凄く簡単なサンプルにはなりますが、最低限下記のような書き方になるかと思います。15」や「Mid」の部分は取得するデータの長さや形に合わせて書く必要があります。Ifさて、こんなところでしょうか。それでも動かせないとかあれば、コメントを頂ければわかる範囲で回答いたします。「どうにも分からんから手伝いに来い!」って方が入れば、日曜か平日の深夜で良ければ、お手伝いに行きますよ♪(費用応相談w)その場合もとりあえずはコメント下さいな(^^b参考までに......僕はこのあたりの重量計を良く使っていたりします。コメントをキャンセルメールアドレスが公開されることはありません。関連記事2018年2月24日VBAでBittrexの仮想通貨トレーディングボットを作ろう!【エクセルやアクセスでできる】2017年10月18日easycommを64bitのOfficeで動かす方法(アクセスもエクセルも対応)2017年9月26日Telegram(テレグラム)APIsをいじってみた。簡易版がなんだかユニーク。2017年9月21日BITTREXのAPIについて調べたら日本語のドキュメントが見つからなかった(^^;人気記事easycommを64bitのOfficeで動かす方法(アクセスもエクセルも対応)EasyCommのVBAサンプル(エクセルやアクセスでEasyCommを使ってみたけど動かないって人へ)仮想通貨は英語で「Cryptocurrency(クリプトカレンシー)」です。仮想通貨と暗号通貨の話・翻訳サイトはWeblioが良い話VBAを使って重量計(はかり)を接続。キズキ(プロフィール)初めまして。サラリーマンしながら色々やっています。最近、初めてkindle書籍とやらを書いてみました。YouTubeに動画上げてみました。ブログの更新は気まぐれですが、日々、気の向くまま生きています。興味を持っていただいた方はぜひ、kindle書籍やYouTubeも見てみて下さい。kindleYouTubetwitter好評発売中!『セブ島、男のカオスな一人旅(キズキ)』kindleストアで好評発売中。KindleUnlimitedだと無料で読めます。kizuki_fujori人気記事easycommを64bitのOfficeで動かす方法(アクセスもエクセルも対応)EasyCommのVBAサンプル(エクセルやアクセスでEasyCommを使ってみたけど動かないって人へ)VBAを使って重量計(はかり)を接続。EasyCommを使用。-独学で一発合格、王道の勉強法!(先日は資格なんて意味がないなんて言ってゴメンナサイ)仮想通貨は英語で「Cryptocurrency(クリプトカレンシー)」です。Store」よりKindleを使っていますTelegram(テレグラム)APIsをいじってみた。見つけました)PAXFULで錬金術wピアツーピア、法定通貨でビットコインを売買!PAXFULがスゴイ!!旅行記をkindle本で出してみた。自分の旅行を自分で設計・格安航空(LCC)やホテル予約サイトを初体験(約20年ぶりの海外旅行)オンライン英会話の授業を120回ほど受けてみた(レアジョブ)ダイエットで早起きが得意になった?ライザップってどうなの?リバウンドするって聞くけど。