2025年1月25日土曜日

obniz and ArduCamMini

 --

https://iot-gym.com/arducammini-obniz/ を基本とするがakizukiの取り扱い品が

mini-2m から mini-2m-plusになっていたので、以下のサイトを参照する

なお上サイトのようにvccを抜くのはいかんようだ。。。。

https://qiita.com/y-hira/items/0a1f4a69f1b1e858a916  のようにすべてつなぐ

それでもlow voltageとアラームでて画面がでない、単3x3をVCC、GNDに追加してでた

それでも画面は緑がかって。。。。

繰り返すが本サイトの修正が必須! 

ストリーム表示でも同様だ! 

<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="https://obniz.io/js/jquery-3.2.1.min.js"></script>
<script src="https://unpkg.com/obniz@latest/obniz.js"></script>
</head>
<body>

<div id="obniz-debug"></div>
<img id="image">

<script>
var obniz = new Obniz("4998-4317"); //obnizIDを入力する
obniz.onconnect = async function () {
var cam = obniz.wired("ArduCAMMini", { cs:0, mosi:1, miso:2, sclk:3, gnd:4, vcc:5, sda:6, scl:7 });
await cam.startupWait();
const data = await cam.takeWait('320x240'); // これでも写真がでるのが結構遅い
 //'160x120'or'176x144'or'320x240'or'352x288'or'640x480'or'800x600'or'1024x768'or'1280x960'or'1600x1200'を指定する
data.unshift(255); // ここが重要!
console.log("image size = " + data.length + " bytes");
 // 以下の理解のためには https://edge.sincar.jp/web/base64-inline-image/ に詳しい書式説明あり
const base64 = cam.arrayToBase64(data);
document.getElementById("image").src = "data:image/jpeg;base64, " + base64;
}
</script>
</body>
</html>

<html>

<head>

<meta charset="utf-8">

<meta name="viewport" content="width=device-width, initial-scale=1">

<script src="https://obniz.io/js/jquery-3.2.1.min.js"></script>

<script src="https://unpkg.com/obniz@latest/obniz.js"></script>

</head>

<body>

<div id="obniz-debug"></div>

<img id="image">

<script>

var obniz = new Obniz("5312-1232");  //obnizIDを入力する

obniz.onconnect = async function () {

  var cam = obniz.wired("ArduCAMMini", { cs:0, mosi:1, miso:2, sclk:3, gnd:4, vcc:5,sda:6, scl:7 });

  await cam.startupWait();

  while (true) { //これでストリームとなる

  const data = await cam.takeWait('160x120'); //'160x120'or'176x144'or'320x240'or'352x288'or'640x480'or'800x600'or'1024x768'or'1280x960'or'1600x1200'を指定する

   data.unshift(255); 

  console.log("image size = " + data.length + " bytes");

  const base64 = cam.arrayToBase64(data);

  document.getElementById("image").src = "data:image/jpeg;base64, " + base64;

 }

}

</script>

</body>

</html>

これでストリームもいけた

0 件のコメント:

コメントを投稿