حاسبة التخفيف إلى ppm المستهدف
لتحضير 100 مل بتركيز 50 ppm من محلول أم تركيزه 1000 ppm، قِس 5 مل من المحلول الأم وأضف 95 مل من المخفف. أدخل التركيزين والحجم النهائي لتحصل على الكميتين ومعامل التخفيف. مجاني في متصفحك.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
مثال محلول
- الأم
- 1,000
- ppm المستهدف
- 50
- الحجم النهائي
- 100
- حجم الأم
- 5
- حجم المخفف
- 95
- معامل التخفيف
- 20
- المعادلة
- stock_ppm · stock_volume = target_ppm · final_volume
تبدأ عملية تحضير محلول عمل بمستوى محدد من الأجزاء في المليون (ppm) دائمًا تقريبًا من محلول أم أكثر تركيزًا: تقيس حجمًا جزئيًا محسوبًا من المحلول الأم في قارورة حجمية ثم تكمل حتى العلامة بالمخفف. ويمنحنا حفظ كتلة المذاب متطابقة الجداء: تركيز الأم بـ ppm مضروبًا في حجم الأم يساوي التركيز المستهدف بـ ppm مضروبًا في الحجم النهائي، ومن ثم فإن حجم الأم هو الحجم النهائي مضروبًا في نسبة التركيز المستهدف إلى تركيز الأم. تأخذ هذه القدرة هذه الأرقام الثلاثة، وتعيد حجم الأم وحجم المخفف التكميلي بحساب فاصلة عائمة حتمي، وترفض أي طلب يتجاوز فيه التركيز المستهدف تركيز الأم، لأن التخفيف لا يمكنه إلا خفض التركيز ولا يرفعه أبدًا.
ماذا تعني ppm الأم وppm المستهدف والحجم النهائي
لا يحوّل المحرك ppm إلى مليغرامات لكل لتر أو مولارية أو نسبة مئوية، ولا يحوّل المليلترات إلى لترات؛ فحافظ على جانبي التركيز بـ ppm وعلى جانبي الحجم بوحدة حجم واحدة من اختيارك. يجب أن يكون تركيز الأم موجبًا تمامًا، لأن محلولًا أمًّا صفريًا لا يمكنه تزويد المذاب. ويجب أن يكون التركيز المستهدف غير سالب وألا يتجاوز تركيز الأم؛ فالهدف المساوي للأم يعني ببساطة استخدام كامل الحجم النهائي كمحلول أم دون أي مخفف.
ويجب أن يكون الحجم النهائي موجبًا تمامًا، لأن قارورة حجمها صفر ليست تحضيرًا فيزيائيًا. المدخلات المتطابقة تنتج دائمًا مخرجات متطابقة، لأنه لا يوجد في المسار أي استدعاء شبكة أو نموذج أو بذرة عشوائية أو ساعة حائط. ومن الأمثلة الصفية: كم مليلترًا من محلول أم للنترات بتركيز ألف ppm تحتاج لتحضير مئة مليلتر من محلول عمل بتركيز خمسين ppm، أو كم من مركز مطهر بتركيز عشرة آلاف ppm يملأ زجاجة سعة خمسمئة مليلتر عند مئتي ppm.
حالات الاستخدام
أوراق تحضير المختبر ومطبخ الأوساط
يدخل الفنيون ppm الأم وppm المستهدف وحجم القارورة؛ فتعيد الحاسبة مليلترات الأم المطلوب سحبها بالماصة والمخفف الواجب إضافته قبل الإكمال إلى الحجم.
الجرعات في الزراعة المائية والمطهرات
يخفف المزارعون وموظفو المنشآت محاليل أم مركزة للمغذيات أو المطهرات حتى ppm العمل الموسوم دون إعادة اشتقاق C1V1=C2V2 عند كل تغيير في الوصفة.
الأسئلة الشائعة
ماذا يحدث إذا كان ppm المستهدف أعلى من ppm الأم؟
التخفيف لا يمكنه رفع التركيز؛ فقط محلول أم أكثر تركيزًا أو عملية مختلفة يمكنها بلوغ هدف أعلى.
بم تختلف عن حلال عام لمعادلة M1V1=M2V2؟
تحل هذه الحاسبة دائمًا حجم الأم انطلاقًا من ppm الأم وppm المستهدف والحجم النهائي، وترفض صراحة هدفًا أعلى من الأم. أما الحلال العام للتخفيف فيغفل أيًّا من الحقول الأربعة دون وعد بجداء خاص بـ ppm.
هل تحوّل الحاسبة ppm إلى ملغ لكل لتر أو إلى المولارية؟
لا، فهي لا تجري أي تحويل. أدخل التركيزين كليهما بوحدة ppm والحجمين بالوحدة نفسها، وستحصل على حجم المحلول الأم بالوحدة التي استخدمتها للحجم النهائي.
ماذا لو كان التركيز المستهدف مساويًا لتركيز المحلول الأم؟
عندها تستخدم الحجم النهائي كله من المحلول الأم ولا تضيف أي مخفف. هذه حالة صحيحة وليست خطأ، أما التركيز المستهدف الأعلى من الأم فمرفوض لأن التخفيف لا يرفع التركيز أبدًا.
في أي مواقف تفيد هذه الحاسبة؟
في أوراق التحضير بالمختبر حيث تحتاج إلى حجم المحلول الأم الذي تسحبه وحجم المخفف الذي تضيفه، وفي الزراعة المائية وتخفيف المطهرات إلى تركيز عمل محدد بوحدة ppm دون إعادة الحساب مع كل وصفة.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/chem/dilution-to-target-ppm \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"stock_ppm":1000,"target_ppm":50,"final_volume":100}'const res = await fetch("https://api.kit.forhosting.com/chem/dilution-to-target-ppm", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"stock_ppm": 1000,
"target_ppm": 50,
"final_volume": 100
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/chem/dilution-to-target-ppm",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"stock_ppm": 1000,
"target_ppm": 50,
"final_volume": 100
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/chem/dilution-to-target-ppm", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"stock_ppm":1000,"target_ppm":50,"final_volume":100}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"stock_ppm":1000,"target_ppm":50,"final_volume":100}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/chem/dilution-to-target-ppm", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"stock_ppm": 1000,
"target_ppm": 50,
"final_volume": 100
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "chem.dilution_to_target_ppm",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |
ملاحظات تقنية
ويمكن لوصفات الزراعة المائية وأوراق تحضير المطهرات المتبقية ومعايير المعايرة البيئية ومختبرات التدريس تثبيت JSON نفسه في الاختبارات دون تضمين رقم CAS كيميائي.
ماذا تعني ppm الأم وppm المستهدف والحجم النهائي
اكتب التحضير بوحدات متسقة: فـ stock_ppm وtarget_ppm كلاهما تركيزان بالأجزاء في المليون على أساس المذاب نفسه، وfinal_volume هو الحجم المضبوط للوعاء الذي ستكمله حتى العلامة. أرسل كائن JSON يتضمن الحقول الثلاثة المطلوبة كأعداد منتهية أو سلاسل رقمية؛ وتُقبل الأسماء المستعارة الموثقة مثل stock وC1 وtarget وfinal_ppm وV2 وtarget_volume حتى يتحدث كود العميل بلغة المختبر. إن ترك حقل مطلوب فارغًا أو إرسال قيم غير منتهية أو طلب هدف أعلى من الأم يفشل بالخطأ invalid_input بدلًا من التخمين.
قراءة حجم الأم وحجم المخفف ومعامل التخفيف والفحوصات
أخطاء التحقق مثل تجاوز الهدف للأم تذكر كلا التركيزين حتى يصحح الفنيون حقلًا مبدلًا دون قراءة تتبع المكدس. عند النجاح، يعيد الرد stock_ppm وtarget_ppm وfinal_volume، ثم يُبلغ عن stock_volume الذي يساوي final_volume مضروبًا في target_ppm ومقسومًا على stock_ppm بعد تقريب مستقر. وdiluent_volume هو final_volume ناقص stock_volume، بحيث يمكن لأوراق التحضير طباعة حجم الماصة ومذيب الإكمال معًا دون حساب ثانٍ. وdilution_factor هو stock_ppm مقسومًا على target_ppm عندما يكون الهدف موجبًا، أو null عندما يكون الهدف صفرًا، حتى لا يقسم العملاء على صفر في واجهاتهم الخاصة. ويُبلغ حقل product عن stock_ppm مضروبًا في stock_volume بالتقريب نفسه، ويعيد equation صياغة متطابقة الحفظ، ويكون check صحيحًا (true) عندما يتطابق جانبا الجداء في ظل ذلك التقريب، بحيث يمكن لكود الواجهة إظهار شارة اتساق خضراء دون إعادة تنفيذ مقارنة الفاصلة العائمة. وتسمية method هي دائمًا dilution_to_target_ppm حتى تتمكن الموجهات اللاحقة من التفرع دون تفحص الأشكال. استخدم stock_volume وحده عندما يحتاج النموذج إلى خلية الحجم الجزئي فقط؛ واستخدم diluent_volume عندما تطبع مطابخ الأوساط خطوط المذيب؛ واستخدم dilution_factor عندما يوسم البروتوكول تخفيفًا بنسبة واحد إلى عشرين بجانب الأحجام المطلقة. كما أن الأم الصفري أو السالب والهدف السالب والحجم النهائي غير الموجب تثير أيضًا invalid_input ولا تُحتسب رسومها بعد أن يرفض المحرك الطلب.
استخدام API والتسعير وسير عمل المختبر والحدود العملية
استخدم حاسبة التخفيف إلى ppm المستهدف المجانية داخل المتصفح للتحقق من الواجبات وعروض المحاضرات والتحضير السريع على طاولة العمل دون تثبيت مكتبة صيغ لجداول البيانات. لا تُنمذج التخفيفات التسلسلية متعددة المراحل كسلسلة داخل استدعاء واحد — نفذ المتطابقة مرة لكل مرحلة — لأن كل مرحلة تظل علاقة الأم بالهدف ذات المدخلات الثلاثة نفسها. وتتبع المدخلات المصدرية قواعد الاحتفاظ نفسها مثل عناصر parse الأخرى في KIT، والنتائج آمنة للتثبيت في تركيبات التكامل المستمر لأن الخوارزمية حساب حتمي بالكامل. أرسل جسم JSON يتضمن stock_ppm وtarget_ppm وfinal_volume كأعداد أو سلاسل رقمية. واستخدم API المدفوعة مسبقًا عندما يحتاج تكامل LIMS أو تطبيق جرعات الزراعة المائية أو مخطط الكلور المتبقي أو مولد معايير المعايرة أو نظام المخزون إلى عقد مستقر برصيد KIT بقيمة $0.002 لكل عنصر ناجح؛ فأخطاء التحقق لا تستهلك الرصيد أبدًا بعد أن يرفض المحرك الطلب. ادمج نقطة النهاية هذه مع حلال عام لمعادلة M1V1=M2V2 عندما تحتاج إلى حل حقل مفقود اعتباطي بدلًا من حجم الأم فقط، أو مع أدوات مساعدة للتحويل من ppm إلى المولارية عندما تكون الخطوة التالية تحويل الهدف إلى مولات لكل لتر. ويمكن للمؤلفين الذين يصدرون SDK ربط الحقول الثلاثة بمدخلات موسومة هي ppm الأم وppm المستهدف والحجم النهائي مع تعبئة حجم الأم تلقائيًا — وهي الأعمدة نفسها التي يكتبها الفنيون عندما يعيدون ترتيب متطابقة جداء التخفيف يدويًا على الورق.
حالات التكامل
الواجبات وتكاملات LIMS
يتحقق الطلاب والسكربتات من مسائل الحجم الجزئي للأم بـ ppm ويثبتون JSON منظمًا، مع خطأ واضح عندما يتجاوز ppm المستهدف تركيز الأم.
أسئلة تقنية
كيف أحسب حجم الأم لتحقيق ppm مستهدف؟
أرسل JSON يتضمن stock_ppm وtarget_ppm وfinal_volume. يعيد الرد stock_volume = final_volume × target_ppm / stock_ppm، إضافة إلى diluent_volume وفحص الجداء.
هل يستخدم حجما الأم والنهائي الوحدة نفسها؟
نعم. حافظ على final_volume وstock_volume المعاد في وحدة متسقة واحدة (كلاهما بالمليلتر مثلًا). المحرك لا يحوّل وحدات الحجم عنك.
هل حاسبة التخفيف إلى ppm المستهدف مجانية؟
تعمل أداة المتصفح مجانًا على جهازك. تستخدم استدعاءات API رصيد KIT المدفوع مسبقًا بقيمة $0.002 لكل عنصر ناجح؛ وأخطاء التحقق لا تُحتسب.